我有多个选择 - 成对。对于每一对,我希望其中一个被禁用,如果另一个被更改。
<select name='wf_events[]'>
<option value=''>--</option>";
foreach ($ug_array AS $ugrow)
echo "<option value='".$ugrow["user_group_id"]."'>".$ugrow["user_group_name"]." [".$ugrow["user_group_short"]."]</option>";
echo "
</select>
or
<select name='wf_events[]'>
<option value=''>--</option>";
foreach ($users_array AS $userrow)
echo "<option value='".$userrow["u_id"]."'>".$userrow["u_realname"]." [".$userrow["u_name"]."]</option>";
echo "
</select>
任何人?请记住 - 这些对中可以有多个。
编辑: 试过这个:
$('.select_1').change(function(e) {
if ($('.select_1').val()==1){
$('.select_2').attr('disabled','disabled');
}
else{
$('.select_2').removeAttr('disabled');
}
});
$('.select_1').trigger('change');
但如果有多对,则所有select_2都将被禁用。这不是重点;-) 而ID是......不。
也许调用一个函数onchange来禁用下一个 - 或之前的..
编辑编辑:
$(".selectoption").on("change", function(event){
if($(this).val() == "") {
$(event.target).attr("disabled", false);
$(event.target).next().attr("disabled", false);
$(event.target).prev().attr("disabled", false);
}
else
{
$(event.target).attr("disabled", false);
$(event.target).next().attr("disabled", true);
$(event.target).prev().attr("disabled", true);
}
});
答案 0 :(得分:1)
我不知道这是不是你想要的,不是最好的解决方案。
$(".selectoption").on("change", function(event){
$(event.target).attr("disabled", false);
$(event.target).next().attr("disabled", true);
$(event.target).prev().attr("disabled", true);
});