Javascript 单选按钮禁用Html.textbox

Javascript 单选按钮禁用Html.textbox,javascript,c#,jquery,html,asp.net,Javascript,C#,Jquery,Html,Asp.net,我有两个单选按钮,分别为“Y”和“N”。它们连接到值为“Y”或“N”的数据库 如果Radio=“Y”,则需要禁用文本框NonBillableReason 如果Radio=“N”,则需要禁用文本框NonBillableReason js。我在页面加载时工作正常,根据单选值“Y”或“N”,我得到了正确的行为。问题是我似乎无法单击单选按钮并更改禁用、真(或)禁用、假 <label><span>YES</span>@Html.RadioButtonFor(model

我有两个单选按钮,分别为“Y”和“N”。它们连接到值为“Y”或“N”的数据库

如果Radio=“Y”,则需要禁用文本框NonBillableReason

如果Radio=“N”,则需要禁用文本框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")
YES@Html.RadioButtonFor(型号=>model.Billable,“Y”)
NO@Html.RadioButtonFor(型号=>model.Billable,“N”)

@Html.TextBoxFor(model=>model.NonBillableReason,新的{@class=“form control”,@placeholder=“NOT BILLABLE BECAUS…”)
$(文档).ready(函数(){
如果($(“#计费:已选中”).val()=“Y”){
$(“#非计费原因”).attr(“禁用”,真);
}
如果($(“#计费:已选中”).val()=“N”){
$(“#非计费原因”).attr(“禁用”,false);
}
});
试试看


由于您使用的是jQuery,因此可以在单选按钮上添加一个
change
事件,然后更改并禁用
nonbilablereason
元素:

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);
});

你能解释一下为什么这个代码能回答这个问题吗?代码唯一的答案是,因为他们不教解决方案。酷伙计,我想我的代码就像简单的语言,不需要注释,将来会注意的
 if($('#radio_button').is(':checked')) 
{ 
 $("#NonBillableReason").attr("disabled", true); 
 }
else 
{
   $("#NonBillableReason").attr("disabled", false); 
}
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);
});