选中单选按钮导致在asp.net中启用文本框

radio button checked causes enabling of a textbox in asp.net

本文关键字:net 启用 asp 文本 单选按钮      更新时间:2023-09-26

我有两个属于同一组的单选按钮。asp.net单选按钮不是常规输入类型的单选按钮。

如果第一个单选按钮被选中,它旁边的文本框将被启用。否则它将被禁用。我已经看到了使用JQUERY的输入类型单选按钮。到目前为止,我还不能将这些代码应用到我的asp.net控件中。

我需要它是javascript,而不是在后面的代码。

任何建议吗?

谢谢!

这是我的代码

    <table>
<tr>
   <td>
                                <asp:RadioButton ID="SiteLicenseRBN" runat="server" Checked="True"   
                                    GroupName="users" resourcekey="SiteLicenseRBN" 
                                    Text="Site License" TextAlign="Left" Font-Bold="True" />
                            </td>
                            <td>
                                <asp:RadioButton ID="ConcUsersRBN" runat="server" GroupName="users"
                                    Text="Conc. Users" TextAlign="Left" 
                                    resourcekey="ConcUsersRBN" Font-Bold="True" 
                                   />
                                <asp:TextBox ID="nuserstbx" runat="server" Enabled="False"
                                    Width="71px"></asp:TextBox>
                            </td>
</tr>
</table>

,如果第二个单选按钮被选中(Conc。,则必须启用nuserstbx,否则应禁用。

像这样:

<form name="myform">
 <input type="radio" name="radios" onclick="rtest(this)" value="R1"/>
 <input type="text" disabled="disabled" name="t1"/>
 <input type="radio" name="radios" onclick="rtest(this)" value="R2"/>
 <input type="text" disabled="disabled" name="t2"/>
 <input type="radio" name="radios" onclick="rtest(this)" value="R3"/>
 <input type="text" disabled="disabled" name="t3"/>
</form>
<script>
 function rtest(r){
    var allinputs = document.myform.elements;
    for(var i=0; i < allinputs.length; i += 1 ){
        if ( allinputs[i].type === "text" ){
           if ( allinputs[i].previousElementSibling.checked ){
               allinputs[i].removeAttribute("disabled");
           }else{
               allinputs[i].disabled = "disabled";
           }
       }
    }
 }
</script>
http://jsfiddle.net/HjLeH/

这是一个简单的例子。所有文本框都被禁用。但是当你点击第一个单选按钮时,它会使旁边的文本框处于活动状态。

 <span id="radiobutt">
  <input type="radio" name="rad1" value="1" />
  <input type="text" id="textbox1" disabled="disabled"/>
    <br/>
  <input type="radio" name="rad1" value="2" />
    <input type="text" id="textbox2" disabled="disabled"/>
    <br/>
  <input type="radio" name="rad1" value="3" />
    <input type="text" id="textbox3" disabled="disabled"/>
</span>
Javascript

    $$("#radiobutt input[type=radio]").each(function(i){
    $(this).click(function () {
        if(i==0) {
                $("#textbox1").removeAttr("disabled");
                $("#checkbox1").removeAttr("disabled");
        }
        else {
                $("#textbox1").attr("disabled", "disabled");
                $("#checkbox1").attr("disabled", "disabled");
        }
      });
  });

或者您可以在这里查看工作示例

http://jsfiddle.net/fqueT/1/