2013-09-08 4 views
0

я следующий JS код:Проверяется флажок

else if ($('#tos').is(':not(:checked)')){ 
      alert("Error"); 
      } 

И тос элемент:

<input type="checkbox" name="tos" value"1"> 

Когда я нажимаю мою кнопку отправки, не проверив его, ошибка не выскакивать. Почему?

+3

В элементе нет 'id =" tos "'. И вам не хватает '=' после 'value'. Являются ли эти опечатки исходным HTML или просто вопросом? – Barmar

+0

Исправлено, я понял, спасибо! –

ответ

5

Ваш селектор $('#tos') ищет элемент с идентификатором tos, который у вас отсутствует. Вы можете либо добавить атрибут id к входному элементу или использовать имя атрибута, чтобы найти элемент

else if (!$('input[name="tos-pp"]').is(':checked')){ 
+0

Спасибо, он работает: D! –

+0

User2738336, если это ответит на ваши вопросы, отметьте его как принятое и нажмите стрелку вверх. –

1

Ваш селектор JQuery является ничего не возвращает, потому что флажок не имеет идентификатор тос. Кроме того, правильный синтаксис для проверки, если флажок/другой вход проверяется следующим образом:

else if (!$('input:checkbox').is(':checked')){ 
    alert("error"); 
} 

Я написал fiddle для справки. См. Код, это может помочь вам.

Смежные вопросы