free-jqgrid中的onSelectRow错误

时间:2017-04-19 15:53:06

标签: asp.net-mvc jqgrid free-jqgrid

我使用 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,                                                   
                });

1 个答案:

答案 0 :(得分:0)

我无法重现这个问题。您可以检查演示版https://jsfiddle.net/OlegKi/ed0yLkce/1/的网络流量。我用

datatype: "local"

在第二个网格中作为初始选项,以防止不需要的Ajax请求。我在两个网格中另外使用idPrefix不同的值,以确保一个与重复的id没有冲突。您将在Developer Tools的Network选项卡中看到,例如https://fiddle.jshell.net/echo/json?celValue=test2的请求将被发送,第二行被选中。