【发布时间】:2013-01-14 13:55:56
【问题描述】:
我有一个 jqGrid:
$('#jqgFileInfoList').jqGrid({
url: '@Url.Action("GetFiles", "File")',
datatype: 'json',
mtype: 'POST',
colNames: ['Id', 'Name', 'Interface', 'Amount', 'Type', 'Created', 'Status'],
colModel: [
{ jsonmap: 'Id', name: 'Id', formatter: 'integer', align: 'right', hidden: true },
{ jsonmap: 'Name', name: 'Name', align: 'right', hidden: true },
{ jsonmap: 'InterfaceName', name: 'InterfaceName', align: 'left', width: '100%', sorttype: 'text', frozen: true, search: true },
{ jsonmap: 'Amount', name: 'Amount', formatter: 'currency', align: 'right', width: '100%', sorttype: 'number', search: true },
{ jsonmap: 'Type', name: 'Type', align: 'right', width: '100%', sorttype: 'text', search: true },
{ jsonmap: 'RunDate', name: 'RunDate', formatter: 'date', align: 'right', width: '100%', sorttype: 'date', search: true },
{ jsonmap: 'Status', name: 'Status', align: 'right', width: '100%', sorttype: 'text', formatter: formatStatus, search: true }
],
sortname: 'RunDate',
sortorder: 'desc',
pager: $('#jqgPagerFileInfoList'),
rowNum: 5,
viewrecords: true,
height: '100%',
autowidth: true,
refresh: true,
ignoreCase: true,
jsonReader: {
repeatitems: false,
root: "rows"
},
altRows: true,
altclass: 'jqGridAltRow',
loadComplete: function () {
$("tr.jqgrow:odd").addClass('jqGridAltRow');
}
});
$('#jqgFileInfoList').jqGrid('filterToolbar', { searchOnEnter: false, enableClear: true, stringResult: true });
过滤工作正常,除了我要修改的几列。
我想以某种方式过滤范围的 Created/RunDate 列。选择一个日期没有用。
我想使用下拉菜单的接口、类型和状态列。最好的方法是什么?
我发现 jqGrid 文档很难理解,有很多选择。我花了一个小时才弄清楚我需要stringResult: true 才能将我的过滤器选项放入控制器中的GridSettings.Where 属性中。
如果重要的话,它是一个 .Net 4.0、MVC 应用程序。
编辑:额外问题:如何使其不区分大小写。
【问题讨论】:
标签: asp.net-mvc jqgrid filtering