0

私のプロジェクトでは、グリッドと2つの日時ピッカーがあり、この2つに基づいて(開始日と終了日を選択)、関連する日付行をグリッドに表示します。これはjsbin http://jsbin.com/exakic/14/editです

助けてください

そして、私の試したコードは次のとおりです。

      $(function() {
        $.datetimepicker.setDefaults({ dateFormat: "dd/mm/yy" });
      $("#datetimepicker, #datetimepicker1") .kendoDatetimePicker() .on('input keyup         change', filter);
     });

  function filter(){
  $('tr').show();
  var datefields = $('grid');
  datefields.each(function(){
   var evdate = pdate($(this).html());
   var mindate = pdate($('#datetimepicker').val());
   if (mindate)
   if (evdate < mindate)
    $(this).parent().hide();
    var maxdate = pdate($('#datetimepicker1').val());
    if (maxdate)
        if (evdate > maxdate)
            $(this).parent().hide();
  });

}
4

1 に答える 1

0

範囲内のデータをフィルタリングするには、関数に次のように追加dataSource.filterします。filter

var filter = {
    logic  : "and",
    filters: [
        { field: "OrderDate", operator: "ge", value: mindate },
        { field: "OrderDate", operator: "le", value: maxdate }
    ]
};
grid.dataSource.filter(filter);

:以下を使用して、入力フィールドからの日付値の読み取りを簡略化できます。

var mindate = $('#datetimepicker').data("kendoDatePicker").value();
var maxdate = $('#datetimepicker1').data("kendoDatePicker").value();
于 2013-03-08T10:50:48.927 に答える