我正在构建一个小应用程序。我有一个PHP代码,里面有一个jqGrid的创建,我还有一个servlet,它发送一个带有JSON的数组的字符串。
字符串如下所示:
[
{"id":1,"firstName":"Amishay","lastName":"Vaturi"},
{"id":2,"firstName":"Amir","lastName":"Bilu"},
{"id":3,"firstName":"Michael","lastName":"Keidar"},
{"id":4,"firstName":"Mika","lastName":"Spivak"},
{"id":5,"firstName":"Ksenia","lastName":"Mosorov"},
{"id":6,"firstName":"Rose","lastName":"Wahlem"}
]
问题是我在网格中看不到它... 网格代码是这样的:
$("#jqGrid").jqGrid({
url: 'http://10.0.0.4:8080/api/students/all',
mtype: "GET",
datatype: "jsonstring",
colModel: [
{ label: 'ID', name: 'id', key: true, width: 75 , height: 50 },
{ label: 'First Name', name: 'firstName', width: 150 , height: 50},
{ label: 'Last Name', name: 'lastName', width: 150 , height: 50}
],
viewrecords: true,
width: 780,
height: 250,
rowNum: 20,
pager: "#jqGridPager"
});
我在这里和整个网络中寻找答案。 我看到我可能需要从服务器发送不同的json。也许有更多的信息,如记录,页数等。我也看到我可能需要在jqGrid属性中声明一个json阅读器。 我做了两件事......仍然没有奏效。这就像我没有找到一个100%满足我的问题的解决方案。 我很乐意得到一个有效的答案(:
非常感谢!
答案 0 :(得分:0)
代码中的错误是使用datatype: "jsonstring"
而不是
datatype: "json"
顺便说一下,您不需要创建隐藏列id
,因为jqGrid会将id
属性的值分配给行的id
属性<tr>
元件)。此外,我建议您使用loadonce: true
选项,因为您使用的数据格式并不意味着服务器端分页。
我创建了演示https://jsfiddle.net/OlegKi/oc7uuh9q/,它使用您的数据来证明一切都应该有效。我刚刚修改了你的代码,以便使用free jqGrid中实现的新功能,这是我开发的jqGrid的分支。