Валидация Javascript Radiobutton Group - PullRequest
1 голос
/ 12 февраля 2011

Я хотел бы, чтобы ваша помощь в разработке функции 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>

Спасибо за помощь .....

Ответы [ 2 ]

7 голосов
/ 12 февраля 2011

Прежде всего, как сказали мои коллеги, у вас не может быть одинакового идентификатора ("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 голосов
/ 12 февраля 2011
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. Вы не можете иметь одинаковый идентификатор ("IDType") для обеих своих радиокнопок.

...