Jqgrid过滤器不能与Asp.net中的Dropdownlist一起使用

时间:2013-01-29 06:28:38

标签: asp.net jqgrid

hii伙计们!!               我在jqgrid中使用dropdownlist实现了filter,但是grid没有显示我添加过滤器的列的值也没有过滤数据..

这是我的代码......

<script type="text/javascript">

    var categoriesStr = ":All;1:vikas;2:Ankur";
    $(function () {
        $("#UsersGrid").jqGrid({
            url: 'getGriddahico.ashx',
            datatype: 'json',
            height: 250,
            colNames: ['UserID', 'UserName', 'FirstName', 'MiddleName', 'LastName', 'EmailID'],
            colModel: [
                    { name: 'UserID', index: 'UserID', width: 100, sortable: true, align: 'center' },
                    { name: 'UserName', width: 100, sortable: true, align: 'center' , formatter: 'select', stype: 'select',
                    sorttype: function (cell) { return categories[cell]; },
                    edittype: 'select', editoptions: { value: categoriesStr },
                    searchoptions: { sopt: ['eq'] }
                },
                    { name: 'FirstName', width: 100, sortable: true, align: 'center' },
                    { name: 'MiddleName', width: 100, sortable: true },
                    { name: 'LastName', width: 100, sortable: true, align: 'center' },
                    { name: 'EmailID', width: 150, sortable: true, align: 'center' }
                ],
            rowNum: 10,
            rowList: [10, 20, 30],
            pager: '#UsersGridPager',
            sortname: 'UserID',
            loadonce: true,
            viewrecords: true,
            ignorecase:true,
            sortorder: 'asc',
            autowidth: true,
            toppager: true,
            height: '100%'

        });

        $("#UsersGrid").jqGrid('navGrid', '#UsersGridPager', { edit: false, add: false, del: false, search: false });

        $("#UsersGrid").jqGrid('filterToolbar', { stringResult: true, searchOnEnter: true, defaultSearch: "cn", beforeSearch: function () {
            //alert("verifying the data");
            var postData = grid.jqGrid('getGridParam', 'postData');
            // we use `stringResult: true` so decoding of the search parameters are a little complex
            var searchData = jQuery.parseJSON(postData.filters);
            for (var iRule = 0; iRule < searchData.rules.length; iRule++) {
                if (searchData.rules[iRule].field === "UserName") {
                    var valueToSearch = searchData.rules[iRule].data;
                    if (valueToSearch.length != 5) {
                        alert("The search string MUST de 5 charachters length!");
                        return true;    // error
                    }
                }
            }
            return false;
        }
        });

        //jQuery("#UsersGrid").jqGrid('filterToolbar', { stringResult: true, searchOnEnter: false });
    });

</script>

欢迎任何帮助......

提前完成

1 个答案:

答案 0 :(得分:0)

可能getGriddahico.ashx未返回已排序的值。 如果你可以分享getGriddahico.ashx的代码,那就更好了。