从主网格加载jqGrid详细信息中的数据时出现问题?

从主网格加载jqGrid详细信息中的数据时出现问题?,jqgrid,master,details,Jqgrid,Master,Details,当我第一次调用时,它会在我的详细信息网格中显示主网格中的数据,但当选择其他行时,它不会在详细信息网格中填充新数据 jQuery("#list10").jqGrid({ sortable: true, url: '/cpsb/unprocessedOrders.do?method=getInitialUnprocessedList', datatype: 'json', colNames: ['Order', 'Load', 'Gate Time', 'Stop',

当我第一次调用时,它会在我的详细信息网格中显示主网格中的数据,但当选择其他行时,它不会在详细信息网格中填充新数据

jQuery("#list10").jqGrid({
    sortable: true,
    url: '/cpsb/unprocessedOrders.do?method=getInitialUnprocessedList',
    datatype: 'json',
    colNames: ['Order', 'Load', 'Gate Time', 'Stop', 'Customer', 'Status'],
    colModel: [
        { name: 'orderNumber', index: 'orderNumber', width: 120, align: "center",
          sorttype: "int", key: true },
        { name: 'loadNumber', index: 'loadNumber', width: 100, align: "center",
          sorttype: "int" },
        { name: 'latestTime', index: 'latestTime', width: 160, align: "center",
          align: "center" },
        { name: 'stopSeq', index: 'stopSeq', width: 80, align: "center",
          sorttype: "int" },
        { name: 'customerNumber', index: 'customerNumber', width: 60,
          align: "center", sorttype: "int" },
        { name: 'orderStatus', index: 'orderStatus', width: 120, align: "center" }
    ],
    rowNum: 10,
    rowList: [10, 20, 30],
    jsonReader: { repeatitems: false,
        root: function (obj) {
            return obj;
        },
        page: function (obj) { return 1; },
        total: function (obj) { return 1; },
        records: function (obj) { return obj.length; }
    },
    pager: '#pager10',
    sortname: 'Gate Time',
    sortorder: "desc",
    gridview: true,
    loadonce: true,
    viewrecords: true,
    multiselect: true,
    multikey: 'ctrlKey',
    caption: "Order Header",
    onSelectRow: function (ids) {
        if (ids == null) {
            ids = 0;
            if (jQuery("#list10_d").jqGrid('getGridParam', 'records') > 0) {
                jQuery("#list10_d").jqGrid('setGridParam', { url:
"/cpsb/unprocessedOrders.do?method=getUnprocessedOrderDetails&orderNum=" + ids });
                jQuery("#list10_d").jqGrid('setCaption',
                        "Order Header: " + ids).trigger('reloadGrid');
            }
        }
        else {
            jQuery("#list10_d").jqGrid('setGridParam', { url:
"/cpsb/unprocessedOrders.do?method=getUnprocessedOrderDetails&orderNum=" + ids });
            jQuery("#list10_d").jqGrid('setCaption',
                      "Order Details: " + ids).trigger('reloadGrid');
        }
    },
    height: '100%'
}); 
jQuery("#list10").jqGrid('navGrid','#pager10',
       {view:true,add:false,edit:false,del:false,searchtext:"Filter"},
       {},{},{},{multipleSearch:true});
$("#list10").jqGrid('hideCol', 'cb');
第二个网格用于查看订单详细信息

jQuery("#list10").jqGrid('reloadGrid');
jQuery("#list10_d").jqGrid({
    height: 100,
    url: "/cpsb/unprocessedOrders.do?method=getUnprocessedOrderDetails&orderNum=",
    datatype: "json",
    colNames: ['Order', 'SKU', 'UPC', 'Item Description', 'Quantity Ordered',
               'Teach in Hold?'],
    colModel: [
        { name: 'orderNumber', index: 'orderNumber', width: 55 },
        { name: 'sku', index: 'sku', width: 55 },
        { name: 'upc', index: 'upc', width: 40, align: "right" },
        { name: 'itemDescription', index: 'itemDescription', width: 150,
          align: "right" },
        { name: 'quantityOrdered', index: 'quantityOrdered', width: 150,
          align: "right", sortable: false, search: false },
        { name: 'teachInId', index: 'teachInId', width: 150,
          align: "right", editable: true, edittype: "checkbox",
          formatter: 'checkbox', editoptions: { value: "true:false"} }],
    rowNum: 5,
    rowList: [5, 10, 20],
    jsonReader: { repeatitems: false,
        root: function (obj) {
            return obj;
        },
        page: function (obj) { return 1; },
        total: function (obj) { return 1; },
        records: function (obj) { return obj.length; }
    },
    pager: '#pager10_d',
    sortname: 'SKU',
    loadonce: true,
    viewrecords: true,
    sortorder: "asc",
    multiselect: true,
    multikey: 'ctrlKey',
    caption: "Order Detail",
    height: '100%'
}).navGrid('#pager10_d', { view: true, add: false, edit: false, del: false },
            {}, {}, {}, { multipleSearch: true });
$("#list10_d").jqGrid('hideCol', 'cb');
jQuery("#ms1").click(function () {
    var s;
    s = jQuery("#list10_d").jqGrid('getGridParam', 'selarrrow');
    alert(s);
});
编辑:刷新页面后,我可以查看不同的记录…但在一个选择后,另一个选择不起作用


edit2:调试后,我发现我正确地附加了orderNum参数,但这并没有调用action类……知道吗?谢谢

在我看来,你在这里找到的主要问题的答案是:


因为您在两个网格中都使用了
loadonce:true
,所以在第一次加载后,每个网格中的
数据类型将从
“json”
更改为
“local”
。在我看来,您应该只删除loadonce:对于第二个(详细的)网格为true。如果您确实希望使用
loadonce:true
进行本地排序或本地分页,那么您应该在同一调用
jQuery(#list10_d”).jqGrid('setGridParam',{url:“…”,datatype:'json})中将
datatype
重置为
“json”

谢谢!它正在工作,但不确定分页和排序..需要填充更多数据以检查分页..当我删除loadonce时第二个网格的分页不工作:真的…知道我在这里做错了什么吗在
触发器('reloadGrid')之前尝试重置
rowNum
(使用
setGridParam({rowNum:10})
);
See@paul:我使用ASP.NET而不是JSP,在这个问题上帮不了你。在ASP.NET中,您可以定义母版页,并在“<代码> <代码>元素>代码> <代码>块中放置不同ID的占位符:<代码> <代码>,在代码<> >代码>块的另一个<代码> <代码>,以及在代码中的“代码> > /代码>中,像您所做的那样。因此,所有页面都从包括母版页和定义最多3个
开始,我修改了你问题的标签,你立即收到了更多的观众,投票,并且已经有一个听起来很有趣的答案。我写这篇文章只是为了说明选择问题的标签是非常重要的,而且非常有用。