jqGrid userData与数字类型而不是对象
只是想在这里确认一些事情。 是否可以直接使用jqGrid的userData和javascript类型(而不是使用带字段的对象)?
如果我修改jqGrid文档中的示例 ,我想将此json返回给jqGrid:
{ total: "xxx", page: "yyy", records: "zzz", userdata: 0, rows : [ {id:"1", cell:["cell11", "cell12", "cell13"]}, {id:"2", cell:["cell21", "cell22", "cell23"]}, ... ] }
并有jQuery("grid_id").jqGrid('getGridParam', 'userData')
返回0
。
目前它似乎返回一个空对象{ }
。
我使用jqGrid 4.4.1。
jqGrid的JSON输入的userdata
部分应该是对象 。 如果你需要在userdata
返回标量,你应该使用类似的东西
"userdata": { mycounter: 0 }
然后使用
var userdata = $("#grid_id").jqGrid("getGridParam", "userData"); if (userdata) { alert(userdata.mycounter); }
好吧经过一些探索后,似乎问题是值为0.其他值(我试过1)回来很好,但是当它为0时我得到{}。
我还尝试更改阅读器以使用函数而不是字段的名称:
jsonReader: { ... userdata: function(json) { return json.response.userdata; }, ... }
但行为完全相同:{}当值为0时,1为1时。
我也更新到4.4.4但它没有改变它。
我不知道这是否有资格作为错误或没有记录的限制,但我将返回一个带有数字字段而不是数值本身的对象,它将解决问题。