javascript - 单选按钮禁用 Html.textbox

标签 javascript c# jquery html asp.net

我有 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/

相关文章:

javascript - 如何使用html5生成临时公钥

javascript - 如何针对不同的功能多次调用requestAnimationFrame?

c# - Visual Studio 变得疯狂 : 'The directory name is invalid' error when trying to compile

c# - Xamarin:不传播任务引发的异常

c# - 如何从 Azure AD 获取用户属性

jquery - 如何在幻灯片结束时停止 Bootstrap 3 Carousel 循环

javascript - Canvas 路径上的随机点(来自 svg 的路径)

javascript - 页面中的 Nuxtjs 异步等待在页面刷新时不起作用

jquery - Div 切换显示/ overflow hidden 父 Div

javascript - 使用 jQuery 从 HTML blob 中删除属性