easyui-combobox多選時的小問題


easyui-combobox可支持多選,僅需將multiple值設為true即可

$('#combobox').combobox({  
    url:url, 
    multiple:true, 
    separator:',',
    valueField:'value',  
    textField:'text'  
});

保存值時,會根據separator值進行分隔,默認以,分隔

在對combobox賦值時,使用了form的load進行賦值

$("#form").form('load', data)

這時就出了一點小問題,在數據庫存入了19,20的值后,再load出來會發現變成了1,9,,,2,0

整了半天沒發現有什么問題,百度也無果

最后從combobox多選時賦值所用的方法中發現了問題:

combobox的multiple值為true時,賦值方法為setValues

$('#combobox').combobox('setValues',data.split(","));

data.split(",”)獲得的是一個數組,而從數據庫中取出的值為String,結果顯而易見,combobox把String拆分成一個個char的數組了,字符串”19,20“就是由 1 9 , 2 0 組成的。。。

同理,在獲取值時使用的方法是getValues,得到的是一個數組

 

所以解決方法就簡單了,只需將19,20split成一個數組再load就沒問題了

 

打賞

免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2021 CODEPRJ.COM