В случае сфинкса вы можете макетировать сторонние пакеты с помощью: autodoc_mock_imports
Для этого вы должны использовать селектор : checked
. Хотя ответ JP хорош, я бы, наверное, сделал следующее:
$('#form1').submit(function() {
if ($('input:checkbox', this).is(':checked') &&
$('input:radio', this).is(':checked')) {
// everything's fine...
} else {
alert('Please select something!');
return false;
}
});
Пара примечаний:
is
, которая возвращает логическое значение селектора. : radio
и : checkbox
как ярлык для выбора всех радио и флажков в форме. Однако согласно руководству jQuery , использование этих селекторов без указания input
перед ними является плохой практикой, поскольку они оцениваются как *: checkbox
и ] *: в противном случае radio
, которые являются очень медленными селекторами. this
в качестве второго аргумента, мы определяем контекст для поиска и, таким образом, ищем только флажки и радио-входы внутри текущей формы. Без него мы можем получить ложные срабатывания, если на странице окажется другая форма. $('#form1').submit(function(){
if ($(':checkbox:checked', this)[0] && $(':radio:checked', this)[0]) {
// everything's fine...
} else {
alert('Please select something!');
return false;
}
});