jqGrid .trigger(“reloadGrid”)没有命中服务器

时间:2012-02-22 13:26:03

标签: jqgrid

我有Master表,我试图触发重新加载第二个(详细信息)表。 在Master表中,onSelectRow我调用.trigger(“reloadGrid”)来刷新详细信息表。详细信息表的loadOnce设置为false。

详细信息表在客户端刷新,但没有命中服务器。

点击服务器需要什么?

onSelectRow:
    function(id) {

        if(id == null) {

            id=0;

            if(jQuery("#addrGrid").jqGrid('getGridParam','records') >0 )

{

                jQuery("#addrGrid").jqGrid('setGridParam',{url:'${addressrecordsUrl}'+'?user_id=id',page:1});

                jQuery("#addrGrid").jqGrid('setCaption',"Address Detail: "+id);

                jQuery("#addrGrid").jqGrid('setGridParam', { datatype: "json" });
                jQuery("#addrGrid").trigger("reloadGrid");
            }
        } else {

            jQuery("#addrGrid").jqGrid('setGridParam',{url:'${addressrecordsUrl}'+'?user_id=id',page:1});

            jQuery("#addrGrid").jqGrid('setCaption',"Address Detail: "+id);

            jQuery("#addrGrid").jqGrid('setGridParam', { datatype: "json" });

            jQuery("#addrGrid").trigger("reloadGrid");
        }

    }

我使用的是JQGrid的4.3.1版本。

1 个答案:

答案 0 :(得分:0)

我找到了解决这个问题的方法。问题在于我用来将user_id传递给详细列表(子列表)的参数传递语法。

jQuery("#addrGrid").jqGrid('setGridParam',{url:'${addressrecordsUrl}'+'**?user_id=id'**,page:1});
上面传递的

user_id是错误的(语法上)

当我用

替换它时
jQuery("#addrGrid").jqGrid('setGridParam',{url:'${addressrecordsUrl}'+'?user_id='+id,page:1});

它得到了解决。