我的问题与此类似: jQuery <select> option disabled if selected in multiple <select> boxes
并且: jQuery <select> option disabled if selected in other <select>
但不同。
我有这个HTML格式:
<form method="post" action="" name="form_letter">
<label for="letter">Letter</label><br>
<select multiple="multiple" name="letter[]" id="letter">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<label for="list_of_a">List of A</label><br>
<select multiple="multiple" name="list_of_a[]" id="list_of_a">
<option value="A1">A1</option>
<option value="A2">A2</option>
<option value="A3">A3</option>
<option value="A4">A4</option>
</select>
<label for="list_of_b">List of B</label><br>
<select multiple="multiple" name="list_of_b[]" id="list_of_b">
<option value="B1">B1</option>
<option value="B2">B2</option>
<option value="B3">B3</option>
<option value="B4">B4</option>
</select>
<label for="list_of_c">List of C</label><br>
<select multiple="multiple" name="list_of_c[]" id="list_of_c">
<option value="C1">C1</option>
<option value="C2">C2</option>
<option value="C3">C3</option>
<option value="C4">C4</option>
</select>
<input type="submit" value="Save">
</form>
我想要实现的是当未选择option
select[name="letter[]"]
时,然后点击submit
按钮,相应字母的select
列表为{{1 }或null
。
场景:
1.如果未选择empty
A option
,则点按select[name="letter[]"]
按钮,submit
将为select[name="list_of_a[]"]
或empty
即使选择了其中一个选项。
2. B和C也是如此。
3.如果未选择null
个选项,则letter
,list_of_a
和list_of_b
为空。
这是我的js:
list_of_c
我一直在这里工作http://jsfiddle.net/VPhPv/21/
但卡住了
请帮帮我。
答案 0 :(得分:2)
您的问题是您将单个值与:not
的{{1}}进行比较。你写过它们时,你永远不会在你的if比较中进入真实状态。如果你将警报(或使用调试器)放入其中,你会看到这一点。
相反,您需要与 选择的值进行不等于比较:
:selected
您也可以通过在选择器中使用元素ID来稍微提高一些效果。