0
我有一个会议注册,用户可以选择在两天内注册研讨会。他们不能在第二天选择同一个车间。然而,每个研讨会都有40名参与者的软限制,所以当注册加载时,有一个查询要获得哪些研讨会有剩余席位。下面禁用基于另一选择以及db数据的选择选项
代码:
<select name="workshop1" required="required" id="workshop1">
<option disabled selected value=""> -- select an option -- </option>
<option value=”wkshp1”>Workshop name</option>
<option value=”wkshp2”>Workshop name</option>
<option value=”wkshp3”>Workshop name</option>
<option value=”wkshp4”>Workshop name</option>
<option value=”wkshp5”>Workshop name</option>
<option value=”wkshp6”>Workshop name</option>
</select>
<select name="workshop1" required="required" id="workshop2">
<option disabled selected value=""> -- select an option -- </option>
<option value=”wkshp1”>Workshop name</option>
<option value=”wkshp2”>Workshop name</option>
<option value=”wkshp3”>Workshop name</option>
<option value=”wkshp4”>Workshop name</option>
<option value=”wkshp5”>Workshop name</option>
<option value=”wkshp6”>Workshop name</option>
</select>
我使用的是从堆栈溢出此代码完美。
$(document).ready(function() {
$("#workshop1").change(function() {
$("select[name=workshop2] option").removeAttr("disabled");
var workshopName = $("select[name=workshop1]").val();
$("select[name=workshop2] option[value=" + workshopName + "]").attr("disabled", "disabled");
});
});
然而,尽管我可以在页面加载车间,充满禁用,jQuery代码上面会重新启用已禁用我的选项(车间满)在车间2。如何遍历所有选项并排除已启用的全部选项。第1天的讲习班相同。&第2天。
'$(“select [name = workshop2] option”)。removeAttr(“disabled”);'重新启用所有选项。你为什么需要这个代码行? – sandrooco
造成这种情况的原因是,如果我为第1天选择了workshop2,那么第2天的研讨会1将被禁用。但是在完成注册之前,我改变了主意并选择了workshop3。无论如何,我想我已经有了解决方案。现在进行测试。 –