我有一个带有2个下拉列表的简单表单,每个下拉列表都有相同的值。
<option value="attr1">attr1</option>
<option value="attr2">attr2</option>
<option value="attr3">attr3</option>
(这只是列表的一个例子,它可能有50多个条目)
如果在DropDown列表1中,我选择attr1
如何从下拉列表2中隐藏它?
如果我从下拉列表中选择另一个选项,那么attr1将需要添加回来,并且从下拉列表2隐藏新选择的项目。
为了更加努力,我正在克隆包含下拉列表的TR。
我正在使用此 fiddle 中的代码来克隆表单上的下拉列表。
所以在一个新的克隆行上,我需要它与其他行无关,因为在它的下拉列表中选择的只会影响它的下拉列表2.
我不知道从哪里开始,但会搜索我发现的内容。
有没有人有任何指示或这样做的例子?
由于
答案 0 :(得分:1)
你必须在select元素的change事件上写这个。
$("#BoxName").change(function(){
var selectedItem = $(this).val();
var nextDropdown = $(this).parent("td").next("td").find("select.BoxComparisonClass");
$(nextDropdown).find("option").show();
$(nextDropdown).find("option:[value="+selectedItem+"]" ).hide();
});
请参阅此JsFiddle
希望这有帮助。