我相信它一定是一些基本的,但我不明白为什么我不能得到一个子网格加载:
$("#MyTable").jqGrid({
datatype: function () {
$("#MyTable").jqGrid("addRowData", 1, { Id: 1, Name: "Someone" });
},
height: 90,
colNames: ["#", "Name"],
colModel: [
{ name: "Id", index: "Id", width: 45, align: "center", sortable: false },
{ name: "Name", index: "Name", sortable: false }
],
caption: "My Table",
subGrid: true,
subGridType: function () {
alert(1);
},
subGridUrl: "myurl",
subGridModel: [ { name: ['No','Item','Qty'], width: [55,200,80] } ]
});
单击+符号展开子网格没有任何作用。它不调用myurl来获取数据。
有人有什么想法吗?我还尝试使用subGridRowExpanded选项而不是subGridModel,但仍然没有运气。
:
所以答案是,它根本不允许将数据类型设置为"本地"或函数的子网格。它只适用于数据类型"json"one_answers"xml"。
您的主要错误是在subgridtype参数写入错误的情况下。
此外,我强烈建议您不要使用 datatype
或subgridtype
作为函数,如果它不是真的需要。当前示例中datatype
的使用可以替换为datatype:'local'
和data: mydata
参数,其中mydata
参数定义为
var mydata = [
{ Id: 1, Name: "Someone" }
];