【发布时间】:2013-12-06 05:31:03
【问题描述】:
伙计们,我正在创建一个代码,该代码将在选择后删除另一个下拉列表中的选定选项,我使用了 jQuery (jquery-1.10.1.min),但我不知道如何才能返回所选择的一旦用户改变主意,选项或数字。
你能帮帮我吗?提前致谢。
这是我的脚本:
HTML
<select name="question_order[]" id="question_order1">
<option value="">None</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
</select>
<select name="question_order[]" id="question_order2">
<option value="">None</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
</select>
<select name="question_order[]" id="question_order3">
<option value="">None</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
</select>
<select name="question_order[]" id="question_order4">
<option value="">None</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
</select>
Javascript
$(window).load(function(){
$('#question_order1').on('change', function() {
var val=this.value;
$("#question_order2").find("option:contains("+val+")").remove();
$("#question_order3").find("option:contains("+val+")").remove();
$("#question_order4").find("option:contains("+val+")").remove();
});
$('#question_order2').on('change', function() {
var val=this.value;
$("#question_order1").find("option:contains("+val+")").remove();
$("#question_order3").find("option:contains("+val+")").remove();
$("#question_order4").find("option:contains("+val+")").remove();
});
$('#question_order3').on('change', function() {
var val=this.value;
$("#question_order1").find("option:contains("+val+")").remove();
$("#question_order2").find("option:contains("+val+")").remove();
$("#question_order4").find("option:contains("+val+")").remove();
});
$('#question_order4').on('change', function() {
var val=this.value;
$("#question_order1").find("option:contains("+val+")").remove();
$("#question_order2").find("option:contains("+val+")").remove();
$("#question_order3").find("option:contains("+val+")").remove();
});
});//]]>
【问题讨论】:
-
不要删除它们,而是使用
display:none对用户隐藏它们,并有一个刷新按钮来display:block所有隐藏的项目。 -
刷新按钮将是一个问题,因为他们想立即显示数据。是否可以在不刷新的情况下显示值?
-
否则你怎么知道用户会改变主意?
-
@KawineshSK 你不能在 IE 中隐藏选项,不支持
标签: javascript jquery select option multiple-instances