ASP.NET:是/否单选按钮,如果是,启用TextBox?

时间:2016-04-13 20:15:26

标签: asp.net if-statement webforms radiobuttonlist

我在几个不同的地方搜索了答案并检查了主题Unity - 3. Android Setup,但无法找到适用的答案。

我正在为纸质表单创建一个Web应用程序(很像我发布的链接中的用户)。但是,与该用户不同,我没有使用更新面板进行显示。他的帖子不够具有描述性,因此我无法弄清楚如何复制他所做的工作以使其发挥作用。

我想做的就是拥有一个asp RadioButtonList;选中“是”时,启用“报告日期”(请参阅​​下文,了解其在表格上的显示方式); “否则”禁用它。

like this

read.table(file, check.names=FALSE)

我对构建Web应用程序非常陌生,所以如果这是一个相对愚蠢的问题我会道歉。我对常见的ASP.NET控件不太熟悉,以便自己解决这个问题。

非常感谢!

3 个答案:

答案 0 :(得分:0)

将RadioButtonList的OnTextChanged属性设置为方法的名称(您将创建),并将AutoPostBack属性设置为true。将TextBox的Enabled属性设置为false。然后,在您创建的方法中。将TextBox设置为启用:

protected void EnableTextBox(object sender, EventArgs e)
    {
                        TextBox_ReportedDate.Disabled = false;      }

或者,您可以在javascript中执行此操作。在PageLoad()方法中,将RadioButtonList的onchange属性设置为您要写的javascript函数:

RadioButtonList_ReportedToSupervisor.Add("onchange", "EnableTextBox('" + TextBox_ReportedDate.ClientID + "');");

然后将此javascript函数添加到您的aspx页面:

<script language="javascript" type="text/javascript">
function EnableTextBox(RBLID)
{
    var textbox = document.getElementById(RBLID);
    textbox.disabled = false;
}

答案 1 :(得分:0)

试试这个。

$('#RadioButtonList_ReportedToSupervisor input').change(function () {
 var selectedvalue = $(this).val();
 if (selectedvalue === "1")
 {
     $("#TextBox_ReportedDate").attr('disabled', 'disabled');

 }
 else if (selectedvalue === "0") {
     $("#TextBox_ReportedDate").removeAttr('disabled');
 }
});

答案 2 :(得分:0)

试试这个:

 $("input[name=toggle]").on('click', function() { var checked = $("input[name=toggle]").prop('checked');
console.log(checked);
   if(checked) { $("#yourbtnId").show();  } 
   else { $("#yourbtnId").hide(); }
                                                 });
<input type="radio" name="toggle" value="1">Toggle