1
我有一個維度,用戶可以在其上過濾大約50個不同的值(通過單擊與每個過濾器相對應的元素)。應用多個過濾器,但交叉過濾器中的其他人js
顯示所有五十個過濾器(元素)是不可能的。 因此,我正在顯示前5名過濾器,並已將其餘其他在dc.js中使用chart.rowsCap(5)
方法。
用戶可以選擇多個過濾器,但它也允許選擇其他。
我想要的是其他被選中,其他過濾器應該被刪除,反之亦然。
到目前爲止,我嘗試了幾件事情,但沒有運氣。 以下是我在on('filtered', func)
聽衆
chart.on('filtered', function(chart, filter){
if(filter instanceof Array){
if(chart.filters().indexOf("Others") !== -1) {
chart.filter(null);
chart.filter(filter);
}
} else if(filter == "Others") {
if(chart.filters().indexOf("Others") !== -1 && chart.filters().length > 1){
chart.filter(null);
chart.filter(filter);
}
} else {
if(chart.filters().indexOf("Others") !== -1){
chart.filter(null);
chart.filter(filter);
}
}
任何幫助表示讚賞嘗試。
但是,這種方式只有一個過濾器不適用於多個。只有在選擇「其他」時才應用一個過濾器,但應該允許多個選擇。 另外,當我再次選擇(點擊)過濾器時,它不會取消選擇它。 – 2014-09-24 05:10:48
好吧,我添加了代碼,使他們不選對方,但否則做正常切換。 – Gordon 2014-09-24 11:02:23
太棒了。我希望我可以投票答覆這個答案千次。 謝謝。 – 2014-09-24 14:02:24