jqGrid本地筛选导致rowid设置为null
基于该解决方案,我在本地实现了过滤 但是,我无法将第一行设置为所选。看起来行ID已设置为空。我不知道为什么会发生这种情况 代码如下jqGrid本地筛选导致rowid设置为null,jqgrid,Jqgrid,基于该解决方案,我在本地实现了过滤 但是,我无法将第一行设置为所选。看起来行ID已设置为空。我不知道为什么会发生这种情况 代码如下 $("#showMatchingRecords").click(function(e) { e.preventDefault(); var grid = $("#WorkList"), filter,searchfiler; searchfiler = "700677"; gri
$("#showMatchingRecords").click(function(e) {
e.preventDefault();
var grid = $("#WorkList"), filter,searchfiler;
searchfiler = "700677";
grid[0].p.search = true;
filter = { groupOp:'OR', rules: [] };
filter.rules.push({field:"Id",op:"eq",data:searchfiler});
$.extend(grid[0].p.postData, {filters:JSON.stringify(filter)});
grid.trigger("reloadGrid", [{page:1}]);
});
$("#showAllRecords").click(function(e) {
e.preventDefault();
var grid = $("#WorkList");
grid[0].p.search = false;
$.extend(grid[0].p.postData, { filters: "" });
grid.trigger("reloadGrid", [{page:1}]);
});
这是我的gridComplete方法,我也用loadComplete尝试过同样的方法
gridComplete : function() {
$("tr.jqgrow:odd").css("background", "#DDDDDC");
var grid = $("#WorkList");
var ids = grid.getDataIDs();
console.log('before ids....', ids);
for (var i = 0; i < ids.length; i++) {
grid.setRowData(ids[i], false, { height: 35 });
}
要在每次重新加载网格时选择第一行,需要执行以下操作 loadComplete:函数{ var$self=$this; 如果this.rows.length>1{//测试网格是否为空 $self.jqGridsetSelection,this.rows[1].id; } } 我严格建议您另外在网格中包含gridview:true选项see以获取详细信息,并将gridComplete替换为rowattr see的用法
caption: 'Records List',
width: 1000,
height: 200,
pager: $("#WorkListPager"),
rowNum: 50,
sortname: 'Name',
loadonce: true,
sortorder: "asc",
cellEdit: false,
viewrecords: true,
imgpath: '/Content/Themes/Redmond/Images',
autowidth: false,
onSelectRow: function (rowid, status, e) {
/* function */
}