我有多个选择:
我想要的是从第一个选择中选择"一个",然后从第二个选项中删除该选项.然后,如果你从第二个中选择"两个",我希望从第一个中删除一个.
这是我目前的JS:
$(function () { var $one = $("#one"); var $two = $("#two"); var selectOptions = []; $("select").each(function (index) { selectOptions[index] = []; for (var i = 0; i < this.options.length; i++) { selectOptions[index][i] = this.options[i]; } }); $one.change(function () { var selectedValue = $("option:selected", this).val(); for (var i = 0; i < selectOptions[1].length; i++) { var exists = false; for (var x = 0; x < $two[0].options.length; x++) { if ($two[0].options[x].value == selectOptions[1][i].value) exists = true; } if (!exists) $two.append(selectOptions[1][i]); } $("option[value='" + selectedValue + "']", $two).remove(); }); $two.change(function () { var selectedValue = $("option:selected", this).val(); for (var i = 0; i < selectOptions[0].length; i++) { var exists = false; for (var x = 0; x < $one[0].options.length; x++) { if ($one[0].options[x].value == selectOptions[0][i].value) exists = true; } if (!exists) $one.append(selectOptions[0][i]); } $("option[value='" + selectedValue + "']", $one).remove(); }); });
但是当元素重新填充时,它会激活选项中更改事件的选项.我尝试disabled
在我想删除的选项上设置属性,但这不适用于IE6.