2014-06-28 21 views
0

我一直想弄清楚如何让我的日期列jqGrid筛选使用“小于或等于”或“大于或等于”(“乐”和“ge”),但它只适用于“eq”,也不适用于“lt”或“gt”。jqGrid过滤日期只适用于等于,不大于

请参阅此jsfiddle: http://jsfiddle.net/Jg2DT/54/代码示例。

colModel: [ 
     { name: 'id', width: 60, sorttype: "int", searchoptions:{clearSearch: false}}, 
     { name: 'name', width: 70, searchoptions:{clearSearch: false}}, 
     { name: 'surname', width: 100, searchoptions:{clearSearch: false}}, 
     { name: 'startdate', sorttype: "date", width: 90, 
      searchoptions: { 
       searchOperators: true, 
       sopt: ['gt', 'eq', 'ge'], 
       clearSearch: false, 
       dataInit: function(elem) { 
        $(elem).datepicker({ 
         dateFormat: 'mm/dd/yy', 
         autoSize: true, 
         changeYear: true, 
         changeMonth: true, 
         showButtonPanel: true, 
         showWeek: true 
        }); 
       } 
      }, 
      formatoptions: { 
       srcformat:'mm/dd/Y', 
       newformat:'mm/dd/Y' 
      } 
     } 
] 

请注意,如果你做一个等于它的工作正常,但没有别的工作。

在此先感谢您的帮助。

回答

1

我想你可以通过将formatter: "date"属性添加到startdate列的定义中来解决问题。

+0

对不起,花了这么长时间回复这个。它一开始没有工作,其他事情成为优先事项。一旦我按照你的建议做了,我必须将srcformat:'mm/dd/Y',newformat:'mm/dd/Y'更改为srcformat:'m/d/Y',newformat:'m/d/Y'这是有道理的。此外,它仍然看起来并没有工作,直到选择日期之后,我必须单击过滤器工具栏中的>或> =等来获取新的datepicker值才能评估。 –

+1

@JosephWhite:对不起,但我不确定:问题现在解决了吗? [演示](http://jsfiddle.net/OlegKi/Jg2DT/68/)在我看来对'formatter:“date”没有任何问题。 – Oleg

+0

是的,现在问题解决了。我只是解释说我使用了错误的srcformat,这就是为什么id一开始似乎没有正常工作。我非常感谢你的帮助。 –

相关问题