2017-10-13 93 views
0

我有一個使用DHTMLXCombo爲我的甘特濾波器創建的組合框。但由於某些原因,當我添加附加事件時,它停止了切換。誰能告訴我這裏有什麼問題,任何的幫助深表感謝下拉式複選框不能切換

下面

是我的代碼:

HTML

<body onload="multiselect_filter()"> 
<select id="search_type" mode="checkbox" style="display:inline-block;"> 
    <option value="ALL" checked="1">ALL</option><option value="ALL" checked="0">ALL</option> 
    <option value="one">one</option> 
    <option value="two">two</option> 
    <option value="three">three</option> 
    </select> 
</body> 

的Javascript:

var search_type_combobox; 
var search_type_value = {'ALL': true}; 
//FILTER BY TYPE 
function multiselect_filter(){ 

    //SEARCH TYPE 
    search_type_combobox = dhtmlXComboFromSelect("search_type", "combo", 100, "checkbox"); 
    search_type_combobox.enableFilteringMode(true); 

//IT STOP TOGGLING WHEN I ATTACH THIS EVENT 
    search_type_combobox.attachEvent("onCheck", function(value, state){ 
     var values = search_type_combobox.getChecked(); 
     search_type_value = {};// put combo value into scope variable 
     for(var i = 0; i < values.length; i++){ 
      search_type_value[values[i]] = true;// build hash for easy check later 
      console.log(i); 
      console.log(value); 
      console.log(search_type_value); 
      console.log(search_type_value[values[i]]); 

     } 
     gantt.render();// and repaint gantt 
    }); 
    <!--Filter gantt by value of the scope variable--> 
    gantt.attachEvent("onBeforeTaskDisplay", function (id, task) { 
     if(search_type_value['ALL']) 
      return true; 
     return !!search_type_value[task.search_type]; 
    }); 
} 

回答

0

不幸的是,問題就不能重構本地。

如果您使用的是舊版本的dhtmlxCombo(< 4.4),請嘗試從您的onCheck事件中「返回true」。

如果問題仍然存在,請您分享演示鏈接,問題可以在哪裏複製。

+0

嗨,@sematik,感謝您的答覆,我使用dhtmlx 4.2,不幸的是我不能給你測試代碼,因爲它的機密。但它的幾乎幾乎相同,除了這個選項是從我的數據庫使用jinja for循環填充。 –

+0

* dhtmlxGantt/Suite 4.2。 –

+0

請嘗試從您的onCheck事件「返回true」 – sematik