我使用 free-jqGrid v4.14.0。我有一个表,当我点击此表中的一行时,我执行一个存储过程,而在另一个表中我输入结果。 问题是,当您第一次单击表中的一行时,数据不会加载到第二个表中,当单击第二个按钮时,数据会出现,并且此问题只出现一次,以下单击立即加载数据进入第二个表。 当您第一次点击浏览器控制台时,您可以看到网址存储过程正在加载:'@ Url.Action(“GetAccident”)',
$(document).ready(function () {
$("#jqg").jqGrid({
url: '@Url.Action("GetAccident")',
datatype: "json",
colNames: ['id_Accident', .......],
colModel: [
{ name: 'id_Accident', index: 'id_Accident', autowidth: true, sortable: false },
.....................
.....................
],
guiStyle: "bootstrap",
iconSet: "fontAwesome",
pager: "#pager",
rowList: [10, 20, 30],
rowNum: 10,
loadonce: false,
onSelectRow:
function (idRow) {
celValue = $('#jqg').jqGrid('getCell', idRow, 'id_Accident');
jQuery("#jqg1").jqGrid('setGridParam', { url: '@Url.Action("GetOrganizationCulpritByIdAccident")?celValue=' + celValue, page: 1 }).trigger('reloadGrid');
}
});
jQuery("#jqg1").jqGrid({
url: '@Url.Action("GetOrganizationCulpritByIdAccident")?celValue=' + 0,
datatype: "json",
colNames: ['id_Accident', 'Name Organization'],
colModel: [
{ name: 'id_Accident', index: 'id_Accident', autowidth: true, stype: 'text', sortable: true },
{ name: 'Name', index: 'Name', autowidth: true, sortable: true }
],
guiStyle: "bootstrap",
pager: "#pager1",
rowList: [10, 20, 30],
rowNum: 10,
});
答案 0 :(得分:0)
我无法重现这个问题。您可以检查演示版https://jsfiddle.net/OlegKi/ed0yLkce/1/的网络流量。我用
datatype: "local"
在第二个网格中作为初始选项,以防止不需要的Ajax请求。我在两个网格中另外使用idPrefix
不同的值,以确保一个与重复的id没有冲突。您将在Developer Tools的Network选项卡中看到,例如https://fiddle.jshell.net/echo/json?celValue=test2
的请求将被发送,第二行被选中。