【发布时间】:2018-04-12 09:41:48
【问题描述】:
如果已在其他框中选择,我想禁用该选项。 为此,我为所有框编写了一个通用类“my_select_class”,并且我正在调用 $('my_select_class').change() 事件,该事件被触发,但其他孩子的兄弟姐妹循环“.my_select_class”无法正常工作.
我的代码是:
<div class="modal-body">
<div class="col-md-5">
<div class="form-group">
<label class="control-label">Member</label>
<select class="form-control my_select_class" id="member0" name="member_list[0][id]" required="">
<option value="">Select</option>
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
</select>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<label class="control-label">Role</label>
<select class="form-control" name="member_list[0][p_role]" required="">
<option value="">Select</option>
-------------------------
-------------------
</select>
</div>
</div>
<div id="lopdisp1" style="display: block;">
<div class="col-md-5">
<div class="form-group">
<label class="control-label">Member</label>
<select class="form-control my_select_class" id="member1" name="member_list[1][id]" required="">
<option value="">Select</option>
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
</select>
</div>
</div>
<div class="col-md-5">
<div class="form-group">
<label class="control-label">Role</label>
<select class="form-control" name="member_list[1][p_role]" required="">
<option value="">Select</option>
-------------------------
-------------------
</select>
</div>
</div>
</div>
<div id="lopdisp2" style="display: block;">
-------------------------
-----------------------
</div>
<div id="lopdisp3" style="display: block;">
-------------------------
-----------------------
</div>
我的JS代码是:
$(document).on('change', '.my_select_class', function(){
var value = $(this).val();
$(this).siblings('.my_select_class').children('option').each(function() {
if ( $(this).val() === value ) {
$(this).attr('disabled', 'disabled').siblings().removeAttr('disabled');
}
});
});
我想要这样:http://jsfiddle.net/dZqEu/
谁能告诉我我的代码有什么问题。谢谢。
【问题讨论】:
-
你的小提琴是完全不同的 HTML 并且工作正常。不过,您问题中的代码将不起作用,因为
.my_select_class元素不是兄弟姐妹... -
那个小提琴只是我想要实现的一个例子。如果
.my_select_class不是兄弟姐妹,请告诉我如何更改我的 HTML 以按照我的要求工作。
标签: jquery select each children siblings