我一直在研究使用 filterToolbar 按日期时间过滤 jqGrid。
我的问题是基于 Olegs 的出色回答。
我终于想出了如何在日期触发工具栏搜索,如下所示:
colModel: [{
    name: 'RequestDate',
    index: 'RequestDate',
    formatter: 'date',
    formatoptions: {
        newformat: 'm/d/Y h:iA'
    },
    searchoptions: {
        sopt: ['eq'],
        dataInit: function (elem) {
            $(elem).datepicker({
                changeYear: true,
                changeMonth: true,
                onSelect: function (dateText, inst) {
                    setTimeout(function () {
                        $('#MyGrid')[0].triggerToolbar();
                    }, 50);
                }
            });
        }
    }
}]
现在,当从选择器中选择日期时,我想返回给定日期的所有记录,而忽略时间。
我尝试过更新该FilterObjectSet方法,但没有成功。有没有人能够成功实现这一点?
我尝试过的:(请参阅 Olegs 链接解决方案中的代码)
将 FormatMapping 设置为"(dateadd(dd,0, datediff(dd,0, it.{0})) = @p{1})"并将 System.DateTime 添加到 switch 语句:
case  "System.DateTime":
                        param = new ObjectParameter("p" + iParam, Convert.ToDateTime(rule.data));
                        break;
但这会导致 EntitySqlException:
'dateadd' cannot be resolved into a valid type or function.
有没有人有办法解决吗?