【发布时间】:2013-05-31 19:12:40
【问题描述】:
我遇到了 jqGrid relaod 的问题。
这就是我所拥有的。
当我的页面加载时我建立一个表格
$("#systemPropList").jqGrid(
{
url : '${servletPath}/systemProperties.data',
colNames:['Key Name','Key Value','Description','System Name','Work'],
colModel : [
{name:'propertyKey',index:'propertyKey', width:155, align:'center'},
{name:'propertyValue',index:'propertyValue', width:100, align:'center'},
{name:'propertyDescription',index:'propertyDescription'},
{name:'propertySystemName',index:'propertySystemName', width:100, align:'center'},
{name:'propertyId', sortable:false, width:60, align:'center', formatter:workButtons }
],
sortname: 'propertyKey',
sortorder: "desc"
})
我在顶部有一个选择框,用于根据从 Dropbox 中选择的值重新加载此表,并且我已将重新加载绑定到 onChange。
$("select[name=systemName]").change(function(obj){
gridReload();
});
function gridReload(){
$("#systemPropList").setGridParam({"page": 1});
$("#systemPropList").jqGrid("setGridParam",{postData:{propertySystemName : $("#systemName option:selected").val()}}).trigger("reloadGrid");
}
这工作正常,直到我选择了一个数据可用的选项。但是一旦我选择了一个没有任何数据的选项,表格就会变成空,并且即使我更改了选择,表格仍然是空的。
我通过萤火虫检查了没有 JS 错误并且重新加载正在正确调用服务器并且服务器正在返回数据。
我错过了什么?
【问题讨论】:
-
为什么会有两个 setGridParam 调用?把它合二为一,看看是否能解决问题。将
{"page":1}移动到第二行
标签: javascript jquery jqgrid