Ответ 1
if(jQuery('#frmTest input[type=checkbox]:checked').length) { … }
У меня есть следующая форма HTML, и у нее может быть много флажков. Когда нажата кнопка отправки, я хочу, чтобы пользователь получил предупреждение javascript для проверки по крайней мере одного флажка, если ни один из них не отмечен. Есть ли простой способ сделать это с помощью JQuery?
<form name = "frmTest" id="frmTest">
<input type="checkbox" value="true" checked="true" name="chk[120]">
<input type="checkbox" value="true" checked="true" name="chk[128]">
<input type="checkbox" name="chk[130]">
<input type="checkbox" name="chk[143]">
<input type="submit" name="btnsubmit" value="Submit">
</form>
if(jQuery('#frmTest input[type=checkbox]:checked').length) { … }
$('#frmTest input:checked').length > 0
$("#frmTest").submit(function(){
var checked = $("#frmText input:checked").length > 0;
if (!checked){
alert("Please check at least one checkbox");
return false;
}
});
$("#show").click(function() {
var count_checked = $("[name='chk[]']:checked").length; // count the checked rows
if(count_checked == 0)
{
alert("Please select any record to delete.");
return false;
}
if(count_checked == 1) {
alert("Record Selected:"+count_checked);
} else {
alert("Record Selected:"+count_checked);
}
});
$('#frmTest').submit(function(){
if(!$('#frmTest input[type="checkbox"]').is(':checked')){
alert("Please check at least one.");
return false;
}
});
is (': checked') вернет true, если отмечен хотя бы один или несколько из этих флажков.
$('#fm_submit').submit(function(e){
e.preventDefault();
var ck_box = $('input[type="checkbox"]:checked').length;
// return in firefox or chrome console
// the number of checkbox checked
console.log(ck_box);
if(ck_box > 0){
alert(ck_box);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form name = "frmTest[]" id="fm_submit">
<input type="checkbox" value="true" checked="true" >
<input type="checkbox" value="true" checked="true" >
<input type="checkbox" >
<input type="checkbox" >
<input type="submit" id="fm_submit" name="fm_submit" value="Submit">
</form>
<div class="container"></div>
if($("#checkboxid1").is(":checked")) || ($("#checkboxid2").is(":checked"))
|| ($("#checkboxid3").is(":checked"))) {
//Your Code here
}
Вы можете использовать этот код, чтобы убедиться, что флажок установлен по крайней мере один.
Спасибо!!