2016-03-30 3 views
2

私はDojo dgridを使用していますが、 "or"文を使用してdstoreフィルタリングに問題があります。彼らはseparatellyあるときDojo dgrid dstore collection - または "filter not working"

var today = new Date(); 
today.setHours(0,0,0,0); 

var start_date= new Date(); 
start_date.setDate(today.getDate() - 5); 
start_date.setHours(0,0,0,0); 

grid.set('collection', store.filter(
    new store.Filter().or(
      new store.Filter().gte('datefield1', start_date).lte('datefield1',today), 
      new store.Filter().gte('datefield2', start_date).lte('datefield2',today) 
    ) 
)); 

両方の条件が完璧に動作しますが、私はにそれらを一緒に入れ「や」フィルタリングするとき、それは次のように動作します「と」文:両方の値を返すために、「真」でなければなりません。

「または」文をdojo dgrid dstoreで正しく動作させるにはどうすればよいですか?

答えて

0

問題は、GitHubでSitePenのkfranqueiroによって解決されました。 彼の関与のために本当に大きな感謝。

store.filter(function (item) { 
    return (item.datefield1 >= start_date && item.datefield1 <= today) || 
     (item.datefield2 >= start_date && item.datefield2 <= today); 
}); 

全議論: https://github.com/SitePen/dgrid/issues/1265

+0

ケンは常に救助に来ます! :D – Himanshu

関連する問題