jqGrid:函数$(“gridView”)。jqGrid(“getGridParam”和“data”返回空值?
我对jqGrid有问题 当我使用:jqGrid:函数$(“gridView”)。jqGrid(“getGridParam”和“data”返回空值?,jqgrid,Jqgrid,我对jqGrid有问题 当我使用: $("#gridView").jqGrid({ url:"grid.php", colModel:[ { name: 'id', index:'id'}, ], datatype: "json", mtype:"post", height:350, rownumbers:true, treeGrid: true, treeGridModel :
$("#gridView").jqGrid({
url:"grid.php",
colModel:[
{ name: 'id', index:'id'},
],
datatype: "json",
mtype:"post",
height:350,
rownumbers:true,
treeGrid: true,
treeGridModel : 'adjacency',
ExpandColumn : 'id',
ExpandColClick: true
....
$("#gridView").jqGrid("getGridParam", "data") return array
我读过这篇文章
但是我无法设置loadonce:true,因为每次单击都有动态数据如果是
treeGrid:true
,则不需要使用loadonce:true
。jqGrid自动为treegrid填充内部参数数据
和\u索引
(请参阅代码的第页)
我假设您得到
null
作为data
参数的值,因为您试图在从服务器加载数据之前访问data
。尝试在loadComplete
回调中使用$(this).jqGrid(“getGridParam”,“data”)
。填充数据后将调用回调函数
感谢Oleg,尝试在loadComplete回调函数中使用$(this).jqGrid(“getGridParam”,“data”),但我需要在另一个函数中使用getGridParam(例如:获取表单的数据)@LamLe:我的意思是,null
作为data
的值的一个可能原因是,您试图在从服务器填充数据之前获取data
。您包含的代码看起来像是在$(“#gridView”).jqGrid(“getGridParam”,“data”)
之后直接包含在$(“#gridView”).jqGrid({…})创建网格的代码>。从url:“grid.php”
填充网格是异步工作的。因此,只有在数据
被填充后,您才能获得它。我建议您尝试将$(this).jqGrid(“getGridParam”,“data”)
包含在loadComplete
回调中,以验证数据是否可以填充。很抱歉,我的帖子与我的真实代码不匹配。--加载完成后,我在每行上都做了一个“编辑(行id)”按钮。当我单击“编辑”按钮时,$(“#gridView”).get(“getGridParam”,“data”)返回我提到的[]。我很困惑,因为我的网格已经加载,它有数据要显示在屏幕上。@LamLe:$(“#gridView”).get(…)
是错误的。应该使用$(“#gridView”).jqGrid(…)
。如果我理解正确,您已经发现了问题并修复了代码。
$("#gridView").jqGrid({
url:"grid.php",
colModel:[
{ name: 'id', index:'id'},
],
datatype: "json",
mtype:"post",
pager:"#pager",
rowNum:50,
rowList:[10,50,100,500,1000],
viewrecords:true,
height:350,
rownumbers:true,
....
$("#gridView").jqGrid("getGridParam", "data") return null ??