【问题标题】:Textbox mandatory on clicking radio button单击单选按钮时必须输入文本框
【发布时间】:2017-07-06 02:48:02
【问题描述】:

我有一个视图,其中添加到电子有 2 个单选按钮是和否。还有一个提交按钮。单击“是”单选按钮。数量文本框不应为空。但如果没有单击单选按钮,它可以为空。当单击提交按钮并选择是单选按钮时,此功能应该起作用。有什么想法吗? 我的观点:

 <HTML>
    <head>
    radio
    </head>
    <body>
    <form id=radio>
     Add to electronic  <input type="radio" name="yes"onclick="validate(_this)"id="yes"/>Yes<input type="radio" name="yes" id="no" />No<br />
    <label>Quantity</label><input type="text"size="25"name="dir"id="dir" required/> 
<button type=submit name=insert>insert</button>
</body>
<div>
<script src="~/Scripts/radiobuttonvalidation.js"></script>
</div>
</html>

我是 mvc 和 javascript 的新手,也帮助我使用 javascript 代码。以及我应该将它与我的视图链接的方式。 Javascript:

    function validate(_this) {
    if ($(_this).attr('id') == "yes") {
        $('#dir').attr('required');
        alert("Text Box required");
    }
    else {
        $('#dir').removeAttr('required');
        alert("Text Box not required");
    }
}

【问题讨论】:

  • 首先,使用 jquery validate 查看客户端验证,然后查看视图模型并将 [Required] 属性设置为文本框,这将在您单击表单中的提交按钮时进行验证。现在寻找方法点击是,启用文本框验证,点击否时,禁用文本框验证,我只指出你可以做到的方式,你应该先尝试一下。
  • 我尝试使用 j 查询,但它没有验证文本框
  • 你已经展示了你的html。显示到目前为止您尝试过的 javascript 代码

标签: javascript c# jquery asp.net-mvc asp.net-mvc-5


【解决方案1】:

$(function() {
  $("#radio").submit(function() {
    if ($('#yes').is(':checked') && !$.trim($('#quantity').val())) {
      alert("Please input the quantity.");
      return false;
    }
  });
});
    <html>
        <head>
            <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
        </head>
        <body>
            <form id=radio>
                Add to electronic <input type="radio" name="yes" id="yes" />Yes<input type="radio" name="yes" id="no" />No<br />
                <label>Quantity</label><input type="text" size="25" name="quantity" id="quantity" />
                <button type=submit name=insert>insert</button>
            </form>
        </body>
    </html>

【讨论】:

  • 如何在视图中链接这个 javascript 和单选按钮?
  • 我认为最好在更改单选按钮时添加必需的属性。
  • 您可以创建一个名为
【解决方案2】:

HTML Required 属性在这种情况下非常有用。 通过此Link 了解更多信息。 另外,如果您需要更多自定义,请查看Jquery Validator

<HTML>
    <head>
    radio
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
      <script>
        function validate(_this)
        {
           if($(_this).attr('id') == "yes")
            {
                $('#quantity').attr('required');
                alert("Text Box required");
             }
            else
             {
                 $('#quantity').removeAttr('required');
                 alert("Text Box not required");
             }
        }
        
      </script>
    </head>
    <body>
    <form id=radio>
     Add to electronic  
     <input type="radio" name="yes" id="yes" onchange="validate(this)"/>Yes
     <input type="radio" name="yes" id="no" onchange="validate(this)"/>No<br />
    <label>Quantity</label>
    <input type="text"size="25" name="quantity"id="quantity" required/> 
    <button type=submit name=insert>insert</button>
</body>
</html>

【讨论】:

  • 我做到了,兄弟。我仍然没有得到任何结果。当我单击插入按钮时单击是单选按钮没有任何反应。我的单选和按钮代码:添加到电子 是 
猜你喜欢
  • 1970-01-01
  • 2014-02-27
  • 1970-01-01
  • 1970-01-01
  • 2016-04-17
  • 2015-10-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多