Cat*_*key 5 javascript options multi-select
我不确定为什么这行不通,并希望在此方面有所帮助!是的,我已经看过这个
我试图在一个选择元素中设置多个选项,使用包含我想要选择的值的数组进行选择,并在数组和选择元素中的选项之间进行插入。请在下面找到代码:
// value is the array.
for (var j = 0; j < value.length; j++) {
for (var i = 0; i < el.length; i++) {
if (el[i].text == value[j]) {
el[i].selected = true;
alert("option should be selected");
}
}
}
Run Code Online (Sandbox Code Playgroud)
完成这些循环后,即使alert()触发,也不会选择任何内容。
任何想法都欢迎!
谢谢
厘米
PS(不确定代码格式化发生了什么)。
编辑:全功能
if (CheckVariableIsArray(value) == true) {
if (value.length > 1) { // Multiple selections are made, not just a sinle one.
var checkBoxEl = document.getElementById(cbxElement);
checkBoxEl.checked = "checked";
checkBoxEl.onchange(); // Call function to change element to a multi select
document.getElementById(element).onchange(); // Repopulates elements with a new option list.
for (var j = 0; j < value.length; j++) {
for (var i = 0; i < el.length; i++) {
if (el[i].text === value[j]) {
el[i].selected = true;
i = el.length + 1;
}
}
}
//document.getElementById(element).onchange();
}
}
else {
for (var i = 0; i < el.length; i++) {
if (el[i].innerHTML == value) {
el.selectedIndex = i;
document.getElementById(element).onchange();
}
}
}
Run Code Online (Sandbox Code Playgroud)
对我有用。您是否正确设置 el 和 value ?您确定要查看每个选项的 innerHTML 而不是它的 value 属性吗?
请参阅jsFiddle。
HTML:
<select id="pick_me" multiple="multiple">
<option>Hello</option>
<option>Hello</option>
<option>Foo</option>
<option>Bar</option>
</select>
Run Code Online (Sandbox Code Playgroud)
JS:
var value = ['Foo', 'Bar'],
el = document.getElementById("pick_me");
// value is the array.
for (var j = 0; j < value.length; j++) {
for (var i = 0; i < el.length; i++) {
if (el[i].innerHTML == value[j]) {
el[i].selected = true;
//alert("option should be selected");
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16221 次 |
| 最近记录: |