使用jquery和禁用获取RadioButton值,相应地启用文本框,Asp.net mvc

时间:2010-07-27 18:38:58

标签: c# .net asp.net-mvc

我有两个单选按钮

输入类型=无线电名称=“等级”值=“P”

input type = radio name =“Level”value =“S”

我有两个文本框:

input type =“text”name =“inpu11”disabled =“disabled”

input type =“text”name =“inpu12”disabled =“disabled”

我的问题是,

如何识别我选择的按钮? 如何检索所选的无线电ID? 如果所选值为“P”,则需要启用第一个文本框,如果“S”

,则需要禁用

1 个答案:

答案 0 :(得分:0)

你问了3个问题。我先回答第三个问题。你可以很容易地用Javascript / JQuery做到这一点。

View.aspx:

<form action='/MyController/MyAction' method='post'>
    <div>
        <input type='radio' name='selectRadios' value='P' />
        <input type='text' name='firstTextBox' value='P' />
    </div>

    <div>
        <input type='radio' name='selectRadios' value='S' />
        <input type='text' name='secondTextBox' value='S' />
    </div>

    <input type='submit' value='Submit Values to ActionMethod' />
</form>

<script type='text/javascript'>
    $(document).ready(function() {
        $("input[name=selectRadios]").click(function() {
            switch($(this).val()) {
                case 'S':
                    $("input[name=firstTextBox]").attr("disabled", "disabled");    
                    break;
                case 'P':
                    $("input[name=firstTextBox]").attr("disabled", "");    
                    break;
            }
        });
    });
</script>

我认为你的第一个和第二个问题很容易通过MVC的模型绑定器得到解答。

MyController.cs(仅限操作方法):

//argument names match form element names from view.aspx
public ActionResult MyAction(string selectRadios, string firstTextBox, string secondTextBox)
{
    //do something with your form values
}