我有 2 个单选按钮可计费“Y”和可计费“N”。它们连接到值“Y”或“N”的数据库。
如果 Radio =“Y”,则需要禁用 TextBox NonBillableReason。
如果 Radio =“N”,则需要禁用 TextBox NonBillableReason。
js.我在页面加载时工作正常,我根据单选值“Y”或“N”获得正确的行为。问题是我似乎无法单击单选按钮并更改禁用、真(或)禁用、假。
<label><span>YES</span>@Html.RadioButtonFor(model => model.Billable, "Y") </label>
<label><span>NO</span>@Html.RadioButtonFor(model => model.Billable, "N")
@Html.TextBoxFor(model => model.NonBillableReason,new {@class = "form-control", @placeholder = "NOT BILLABLE BECAUS..."})
<script>
$(document).ready(function () {
if ($("#Billable:checked").val() == "Y") {
$("#NonBillableReason").attr("disabled", true);
}
if ($("#Billable:checked").val() == "N") {
$("#NonBillableReason").attr("disabled", false);
}
});
</script>
最佳答案
由于您使用的是 jQuery,因此您可以在单选按钮上添加 change
事件,然后更改禁用 NonBillableReason
元素:
function validate() {
if ($("#Billable:checked").val() == "Y") {
$("#NonBillableReason").attr("disabled", true);
}
if ($("#Billable:checked").val() == "N") {
$("#NonBillableReason").attr("disabled", false);
}
}
$(document).ready(function () {
validate();
$('input').change(validate);
});
关于javascript - 单选按钮禁用 Html.textbox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28844485/