Dojo:选项[selected ='selected']不适用于运行时更改

时间:2013-04-04 14:32:29

标签: javascript html dojo

我正在使用多选框并找到

var count = dojo.query("option[selected ='selected']", dojo.byId('select_id')).length;

始终返回页面(数据库)中的任何原始内容,但是在运行时选择了哪些用户。我在Dojo 1.6上运行。那么如何从多选框AT RUN-TIME?

计算所选选项的数量

1 个答案:

答案 0 :(得分:1)

我创建了一个页面,显示用户和他们所在的组。以下是一些代码。我不得不撕掉一些东西以使其简洁。最后一行代码回答了这个问题。它返回一个带有选中值的数组。

// Programattically create the select.
var _groups = new dojox.form.CheckedMultiSelect({
    multiple : true,
    class : "cssThing"
}, "groups" + _userNumber);

// Fill the CheckedMultiSelect boxes with unchecked data.
var tempArray = new Array();
dojo.forEach(groupList, function(row, index) {
    tempArray.push({
        value : row.value,
        label : row.label,
        selected : false,
    });
});
_groups.addOption(tempArray);

// Populate the CheckedMultiSelect with an array.
var tempArray = [];
dojo.forEach(user.groups, function(row) {
    tempArray.push(String(row.groupName));
});
_groups.set('value', tempArray);

// Get the CheckedMultiSelect values as an array.
_groups.get('value');