2013-03-20 2 views
31

У меня есть этот HTML:Проверьте, если переключатель проверяется JQuery

<input type="radio" name="test" id="test" value="1"><br> 
<input type="radio" name="test" id="test" value="2"><br> 
<input type="radio" name="test" id="test" value="3"><br> 

<input type="button" onclick="CreateJobDo"> 

При загрузке страницы, ни один из них не будет проверяться. Я хочу использовать jQuery, чтобы проверить, проверяется ли одна из переключателей при нажатии кнопки.

У меня есть это:

function CreateJobDo(){ 
    if ($("input[@name=test]:checked").val() == 'undefined') { 

     // go on with script 

    } else { 

     // NOTHING IS CHECKED 
    } 
} 

Но это не работает. Как заставить его работать?

+9

идентификаторы ** MUST ** быть уникальным. – j08691

+0

@LightnessRacesinOrbit Он хочет проверить, проверен ли какой-либо из его радиобоксов, и в настоящее время его тестовая инструкция не работает. – Jlange

+0

Ну, может, у вас есть старая версия вопроса, потому что в вашей цитате нет? «Когда страница загружается, ни один из них не будет проверен. Я использую JQuery, чтобы проверить, проверена ли одна из переключателей?» - предполагая, что он «хочет использовать JQuery». – Jlange

ответ

44

попробовать это

if($('input:radio:checked').length > 0){ 
// go on with script 
}else{ 
    // NOTHING IS CHECKED 
} 
+3

imo вы можете безопасно удалить '> 0' часть 'вызвать положительные целые числа _are_ true – T30

+0

Он работает, но не читается так же, как' $ ("input: radio"). (': проверено') '. – NateS

69

Прежде всего, есть только один id="test"

Во-вторых, попробуйте следующее:

if ($('[name="test"]').is(':checked')) 
+1

Это не имя = "тест" опечатка? Я верю, что правильно onw ($ ('[id = "test"]'). is (': checked')) – Entrodus

+2

Не переусердствуйте. И вы никогда не будете делать '$ ('[id =" test "]')' вы будете делать '$ ('# test')' – AlienWebguy

+0

У меня была такая же ситуация, и этот ответ помог мне. Я дал свой голос. Спасибо. –

2
$('#submit_button').click(function() { 
    if (!$("input[@name='name']:checked").val()) { 
     alert('Nothing is checked!'); 
     return false; 
    } 
    else { 
     alert('One of the radio buttons is checked!'); 
    } 
    }); 
16

Что-то вроде этого:

$("input[name=test]").is(":checked"); 

Использование JQuery является функция() должна Работа.

+0

проверенные работы для обоих радиостанций и флажков – AlienWebguy

9
if($("input:radio[name=test]").is(":checked")){ 
    //Code to append goes here 
} 
Смежные вопросы