Я пытаюсь проверить, установлен ли флажок с помощью метода is()
, но он дает неожиданный результат. В любом случае, если я установил флажок или нет, метод возвращает false.is ('checked') метод фильтрации не работает правильно
HTML
<form action="" method="post" id="place_order">
<input type="checkbox" name="tos" class="required check-condition" />
<span class="error error-tos" style="display:none">* This field is required</span><br>
<input type="submit" name="place_order" value="Submit Order" class="order-sb-btn" />
</form>
Jquery
$("#place_order").submit(function() {
var is_tos_checked = $(".check-condition").is('checked');
console.log(is_tos_checked);
if (is_tos_checked) {
$(".error-tos").hide();
return true;
} else {
$(".error-tos").show();
return false;
}
});
Jsfiddle
http://jsfiddle.net/yogc5ypb/1/
ахам, да работу. – user3467855
Вы также можете использовать 'var is_tos_checked = $ (". Check-condition "). Prop ('checked');' –
Ну, один возвращает логическое значение, в то время как другое возвращает значение свойства. Значение свойства в этом случае будет принудительно введено в его булевскую форму при проверке в состоянии, но все же, если вы хотите, чтобы логическое значение (как это делает OP), лучше всего использовать метод, который возвращает один. – Utkanos