После повторного заполнения JqGrid идентификатор строки не изменяется в subGridRowExpanded
После повторного заполнения JqGrid идентификатор строки не изменяется в subGridRowExpanded.
Пожалуйста, найдите код ниже..
Grid: function(gridEntity, filter) {
var MyGrid = {
Params: {
datatype: function(postData) {
$.ajax({
url: "TestPage.aspx/GetTestData",
type: "POST",
data: [],
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data, status) {
$("#grid").clearGridData();
Entity = JSON.parse(data.d);
var rowId = Entity.length + 1;
$("#grid").addRowData(rowId, Entity, "last");
}
});
},
height: 'auto',
rowNum: 100,
page: 1,
rowList: [10, 50, 100],
pager: '#pager',
viewrecords: true,
subGrid: true,
jsonReader: {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: true,
cell: "cell",
id: "id",
userdata: "userdata",
subgrid: {
root: "rows",
repeatitems: true,
cell: "cell"
}
},
subGridRowExpanded: function(subgridId, rowId) {
rowId = parseInt(rowId.replace("jqg", ""), 10);
var subGrid = {};
subGrid.rows = Entity.rows[rowId - 1].SubgridRows;
var subgridTableId = subgridId + "_t";
$("#" + subgridId).html("<table id='" + subgridTableId + "'></table>");
$("#" + subgridTableId).jqGrid({
datatype: "local",
data: subGrid.rows,
colNames: ['Teacher', 'Subject'],
colModel: [{
name: 'Teacher',
align: "center",
width: 200,
sortable: false
}, {
name: 'Subject',
width: 100,
align: "center",
sortable: false
}],
height: "100%",
rowNum: 10,
idPrefix: "s_" + rowId + "_"
});
},
caption: 'Test Grid',
colNames: ["Name", "Addr",
colModel: [{
name: "Name",
width: 40,
sortable: false
},
{
name: "Addr",
width: 60,
sortable: false
}
],
pager: "#pager"
},
};
},
Reload: function(postData) {
$.ajax({
url: "TestPage.aspx/GetTestData",
type: "POST",
data: [],
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data, status) {
$("#grid").clearGridData();
Entity = JSON.parse(data.d);
var rowId = Entity.length + 1;
$("#grid").addRowData(rowId, Entity, "last");
}
});
},
Data: Entity,
Пожалуйста, посмотрите на subGridRowExpanded. Когда я перезагружаю сетку, "rowId" не меняется. Допустим, сначала у меня есть 100 строк, но после фильтрации я получаю 10. И затем, если я разверну 1-ую строку для просмотра подсетки, rowId будет выглядеть как "jqg50". Мне нужно, чтобы rowId был "jqg1" или "1", поэтому что я могу отфильтровать сущность для заполнения подсетки. ИЛИ Есть ли способ получить rowId = 1, когда я щелкаю значок "+" в сетке после ее повторного заполнения? Любая помощь будет оценена..