【问题标题】:how to validate radio buttons in javascript?如何验证javascript中的单选按钮?
【发布时间】:2014-09-02 20:50:58
【问题描述】:

我的html代码-

 <form method="post" name="editorform" id="editorform" onsubmit="return validate_editorform(this)" action="#">
      <ol><li>
        <label for="qtitle"><b>Title</b></label>
        <input id="qtitle" name="qtitle" class="text"></textarea>
      </li><li>
        <label for="tag"><b>Tag</b></label>
            <table border="0">
                <tr>
                    <td><input type="radio" name="tag" value="art"/>Art & Living</td>
                    <td><input type="radio" name="tag" value="travel" class="rdbtn"/>Travel</td>
                    <td><input type="radio" name="tag" value="religion" class="rdbtn"/>religion</td>
                </tr>
.....

我的 javascript-

function validate_editorform(editorform) 
{
    var qtitle = editorform.qtitle.value;
    var tag = editorform.tag.value;  
    var question = editorform.question.value;
    var nameRegex = /^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/; 

    if(qtitle == "") {
        inlineMsg('qtitle','You must enter a Question title.',5);
        return false;
    }
    if(editorform.tag.checked == "") {
        inlineMsg('tag','You must Tag your question.',5);
        return false;
    }
    if(question == "") {
        inlineMsg('question','You must enter a your Question.',5);
        return false;
    }
}

对于 qtitle 和 question JavaScript 工作正常,但对于单选按钮(标签)却不是。谁能找出问题所在?

【问题讨论】:

    标签: javascript html radio-button


    【解决方案1】:

    改变

    if(editorform.tag.checked == "") {
    

    if(tag == "") {
    

    【讨论】:

      【解决方案2】:
      if(editorform.tag[0].checked == False... and so on for tag[1]...)
      

      【讨论】:

        【解决方案3】:
        <html>
          <head>
            <title>Validating Radio Button</title>
            <script>
              select = ""
              len = document.myform.radioname.length
        
              for (i = 0; i <len; i++) {
                if (document.myform.radioname[i].checked) {
                  select = document.myform.radioname[i].value
                }
              }
        
              if (select == "") {
                alert("No Option selected");
                return false;
              }
              else {
                alert("option selected");
                return true;
              }
            </script>
          </head>
          <body>
            <form name="myform" action="thankyou.html" onsubmit="return validateForm()" method="post">    
              Choose your favourite Car Brand
              <input type="radio" name="radioname" value="maruti">Maruti<br>
              <input type="radio" name="radioname" value="fiat">Fiat<br>
              <input type="radio" name="radioname" value="BMW">BMW<br>
              <input type="radio" name="radioname" value="jaguar">Jaguar<br>
            </form>
          </body>
        </html>
        

        【讨论】:

          猜你喜欢
          • 2012-05-07
          • 1970-01-01
          • 2018-02-19
          • 2022-11-19
          • 2013-02-01
          • 2011-06-26
          • 2013-01-08
          • 1970-01-01
          • 2014-02-03
          相关资源
          最近更新 更多