我有一个包含下一个代码的表单:
<select multiple="multiple" id="something" class="boo" name="foo">
<option value="40">AAAAA</option>
<option value="39">BBBBB</option>
<option value="15">CCCCC</option>
</select>
目前此表单具有绑定的onChange函数,如下所示:
var updateValues = function(event, target, object){
var selectbox = Ext.get(target.id);
var values = [];
for(i=0; i<selectbox.dom.options.length; i++){
if (selectbox.dom.options[i].selected)
{values.push(selectbox.dom.options[i].value);}
}
callSomeFunc(values);
}
请使用ExtJS向我展示正确的方法。我认为应该有一个函数,它返回一个选定值的数组,就像jQuery的val()
一样。如果我不对,请写评论。
答案 0 :(得分:0)
如果您希望多项选择与类似ComboBox的功能相结合,我建议您使用SuperBoxSelect用户扩展名。如果开箱即用的外观不适合您,您可以通过修改或删除附带的CSS轻松更改它。
该组件提供了检索所选值的好方法。当用户选择值时,组件将记住值并在内部存储它们。相反,如果用户删除了值,组件也将为您处理该状态。假设原始功能适合您,您需要做的就是在准备好提交表单后调用方法来获取值。
如果您有兴趣,这是一个演示页面。它很容易包含在您的JavaScript中,所以不要担心它是用户扩展名:
http://www.technomedia.co.uk/SuperBoxSelect/examplesRemote.html