我有2个表单选择。 我会检查select on change的值,如果值为2,我想禁用相同的div。
HTML
<select id="foo">
<option value="1">1</option>
<option value="2">2</option>
</select>
<select id="bar">
<option value="1">1</option>
<option value="2">2</option>
</select>
JS
$('select#foo').change(function()
{
var eck = $('select#foo option:selected').prop('value');
if (eck == '2')
{
$('#div').prop('disabled', true);
}
else
{
$('#div').prop('disabled', false);
}
});
$('select#bar').change(function()
{
var eck = $('select#bar option:selected').prop('value');
if (eck == '2')
{
$('#div').prop('disabled', true);
}
else
{
$('#div').prop('disabled', false);
}
});
我的问题是,以这种方式对每个选择的改变事件进行覆盖以前的覆盖。 我该怎么办呢?感谢
答案 0 :(得分:1)
我认为您要找的是,如果在option[value=2]
个元素中选择select
,则禁用ID为div
的元素。所以
var $selects = $('#foo, #bar').change(function() {
$('#div').prop('disabled', $selects.find('[value="2"]').is(':selected'));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="foo">
<option value="1">1</option>
<option value="2">2</option>
</select>
<select id="bar">
<option value="1">1</option>
<option value="2">2</option>
</select>
<button id="div">div</button>
&#13;