是否可以让 JqGrid 在每一行显示行数?例如:
Group A
1 xxx xxx xxx
2 xxx xxx xxx
Group B
1 xxx xxx xxx
2 xxx xxx xxx
是否可以让 JqGrid 在每一行显示行数?例如:
Group A
1 xxx xxx xxx
2 xxx xxx xxx
Group B
1 xxx xxx xxx
2 xxx xxx xxx
好吧,我不确定 jqGrid 是否支持,但我已经调整插件以支持我想要的
对于那些也希望拥有此功能的人,可以尝试以下步骤:
1)启用rownumbers功能进行分组
if (p.grouping === true) {
p.scroll = false;
// p.rownumbers = false; <-- comment it
...
2) 计算行数
-在 p.lastSelectedData = query.select() 之后;添加以下代码
if (p.rownumbers && p.grouping && p.groupingView.groupField.length > 0){
var lastGroupVal = {};
var custGroupCount = 0;
var groupColName = '';
for(var custCount=0; custCount<p.groupingView.groupField.length; custCount++){
groupColName = p.groupingView.groupField[custCount];
lastGroupVal[groupColName] = '';
}
for (j = 0; j < total; j++) {
custGroupCount ++;
for(var custCount=0; custCount<p.groupingView.groupField.length; custCount++){
groupColName = p.groupingView.groupField[custCount];
if(lastGroupVal[groupColName] != p.lastSelectedData[j][groupColName]){
custGroupCount = 1;
lastGroupVal[groupColName] = p.lastSelectedData[j][groupColName];
}
}
p.lastSelectedData[j]['custGroupCount'] = custGroupCount;
}
}
这将计算每个行数并分配给“custGroupCount”字段
为 lastSelectedData 赋值是因为我看到它使用这个变量来显示数据
3) 使行号使用 'custGroupCount' 显示
- 在 addRowNum 函数中,赋值给 'v' 后,添加
if (p.grouping && p.groupingView.groupField.length > 0){
v = p.lastSelectedData[(v-1)]['custGroupCount'];
}
ps:我使用jqGrid只显示数据,所以不确定这个更改是否会导致其他问题
输出: 样本输出