在jqgrid中,如何按条件加载数据?

时间:2014-12-05 18:09:50

标签: javascript jquery jqgrid

$("#list").jqGrid({
        url: "assets/PHP/userManager/user-read.php",
        datatype: "json",
        mtype: "GET",
        colNames: ["UserId", u, "User_Group_Id"],
        colModel: [
            { name: "UserId", hidden: true },
            { name: "UserName", width: 270, align: 'center', stype: 'text' },
            { name: "User_Group_Id", hidden: true}
        ],
        height: "87%",
        pager: "#pager",
        rowNum: 30,
        sortname: "UserId",
        sortorder: "asc",
        viewrecords: true,
        gridview: true,
        autoencode: true,
        multiselect: true,
        caption: "User List"
    }); 

    $(".ui-jqgrid-titlebar").hide();
    $("#pager_right").hide();
    $("#pager_center").width(220);
    $(".ui-pg-input").height(13);

    $("#list").navGrid( "#pager", {
        search: true,
        add: false,
        edit: false,
        del: false,
        refresh:true,
        searchoptions: {left: '30%'}
    });

    $("#search_list").click(function(){
        $("#searchmodfbox_list").css( "left", "30%" );
    });

这是我在我的代码中使用的jqgrid,我创建了一些按钮。我需要一个来自jqgrid的方法或事件,我可以单击该按钮并调用该方法,然后它将加载包含模式的所有数据的数据。

例如,我有一个名为" student"的按钮,当我点击它时会过滤角色字段为学生的所有数据,因此网格将显示所有学生。

1 个答案:

答案 0 :(得分:0)

我想出来了。在jqgrid完全加载后,我可以使用它来设置网格的参数并触发重新加载以刷新网格。但是它有一个问题,即参数总是'groupId = 1',那么搜索或过滤器将无法正常工作。要解决此问题,我必须将postData设置为空。

$("#list").setGridParam({'postData' : 'groupId=1'});
$("#list").trigger("reloadGrid");
$("#list").setGridParam({'postData' : {}});