【问题标题】:Javascript Radiobutton Group ValidationJavascript单选按钮组验证
【发布时间】:2011-06-26 00:18:56
【问题描述】:

我希望您帮助开发一个 javascript 函数来验证是否选择了以下单选按钮组 (IDType) 以及检查哪个值并在 (ValidationError) 部门查看错误消息以防未选择单选按钮 ??

<td>
<div>
<span>
<input type="radio" name="IDType" id="IDType" value="IDtype1"/>
ID Type 1
<input type="radio" name="IDType" id="IDType" value="IDtype2"/>
ID Type 2
</span>
<div id="ValidationError" name="ValidationError">
&nbsp;
</div>
</div>
</td>

感谢您的帮助.....

【问题讨论】:

  • 你试过什么?什么没用?我们没有为您编写代码的习惯,但很乐意帮助您解决任何问题。
  • 您的两个input[type=radio] 元素具有相同的idid 值(不同于 name 值)必须是唯一的:w3.org/TR/html5/dom.html#concept-id
  • 感谢您的回答,但我不想使用 jQuery 并使用 Simple JavaScript 代替。

标签: javascript html validation radio-button radio-group


【解决方案1】:

首先,正如我的同事所说,两个单选按钮不能有相同的 id(“IDType”)。

这是一个仅使用 javascript 的解决方案,没有任何 jquery。

<html>
<head>
<script type="text/javascript">
function Validate() {
    var radios = document.getElementsByName('IDType')

    for (var i = 0; i < radios.length; i++) {
        if (radios[i].checked) {
        alert("Selected Value = " + radios[i].value);
        return true; // checked
    }
    };

    // not checked, show error
    document.getElementById('ValidationError').innerHTML = 'Error!!!';
    return false;
}
</script>
</head>
<body>
<form>
<div>
<span>
<input type="radio" name="IDType" value="IDtype1"/>
ID Type 1
<input type="radio" name="IDType" value="IDtype2"/>
ID Type 2
</span>
<div id="ValidationError" name="ValidationError">
</div>
</div>
<input type="submit" value="Submit" onclick="return Validate();" />
</form>
</body>
</html>

【讨论】:

    【解决方案2】:
    function validateRadioButtons(){ 
        var radio = $('input:radio[name="IDType"]:checked');
        if(radio.length == 0)//no buttons selected
           {
               $('ValidationError').text("you haven't selected any buttons!");
               return;
           }
        $('ValidationError').text(radio.val()+' is selected');
    }
    

    ps:为了让它工作,你应该考虑为 dom 元素使用唯一的 id。两个单选按钮不能有相同的 id(“IDType”)。

    【讨论】:

    • 感谢您的回答,但我不想使用 jQuery 并使用 Simple JavaScript 代替。
    猜你喜欢
    • 2013-01-08
    • 2020-07-08
    • 1970-01-01
    • 2011-11-27
    • 1970-01-01
    • 2012-10-24
    • 2013-01-24
    • 2014-02-03
    • 2012-05-07
    相关资源
    最近更新 更多