JqG​​rid - 使用附加字段进行简单搜索

时间:2012-01-31 09:28:34

标签: jquery search jqgrid

我正在使用jqgrid并启用了简单搜索。我想知道是否有一种方法可以在选择的字段列表中添加一个额外的项目,该列表不作为网格中的列存在。我会称之为“任何字段”,因此我可以搜索任何字段,然后处理结果服务器端。

2 个答案:

答案 0 :(得分:1)

尝试添加新的隐藏列并将hidedlgand hidden设置为true,可查看为false。

文档链接:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:colmodel_options

答案 1 :(得分:1)

Bethrezen建议使用一个隐藏列是您可以使用的一种方法。您只应该忘记使用searchhidden: true searchoptions

我可以建议您在the demo上看到的另一种方式:

enter image description here

在演示中我添加了

var defaultFilters = {
        "groupOp": "AND",
        "rules": [
            { "field": "All", "op": "cn", "data": ""}
        ]
    };
...
$('#list').jqGrid('navGrid', '#pager', {add: false, edit: false, del: false},
    {}, {}, {},
    {
        multipleSearch: true,
        overlay: 0,
        onInitializeSearch: function ($form) {
            $form.jqFilter('addFilter', defaultFilters);
        },
        afterRedraw: function (p) {
            if (p.columns.length === $("#list")[0].p.colModel.length) {
                p.columns.push({
                    name: 'All',
                    label: 'Any Field',
                    searchoptions: {},
                    searchrules: {},
                    searchtype: 'string',
                    inputtype: 'text'
                });
            }
            //$(this).find('.delete-rule:first').hide();
        }
    });

在演示中,我扩展了p.columns方法的jqFilter参数和附加的“伪列”'任意字段'。我希望您可以根据自己的具体要求采用这个想法。