我在多个div中有以下复选框。
<div class="div1">
<input type="checkbox" class="chkbox" value="101"> This is 101
<input type="checkbox" class="chkbox" value="102"> This is 102
<input type="checkbox" class="chkbox" value="103"> This is 103
</div>
<div class="div2">
<input type="checkbox" class="chkbox" value="110"> This is 110
<input type="checkbox" class="chkbox" value="102"> This is 102
<input type="checkbox" class="chkbox" value="101"> This is 101
</div>
如上所示,一些复选框在多个div中具有相同的值(例如,101)。现在,每当选中复选框时,我都需要检查具有相同值的其他复选框。同样,取消选中。
$(".chkbox").change(function() {
// If checked
if (this.checked)
// find other checkboxes with same value and check them
else
// find other checkboxes with same value and uncheck them
}
答案 0 :(得分:9)
$(".chkbox").change(function() {
var val = $(this).val();
if( $(this).is(":checked") ) {
$(":checkbox[value='"+val+"']").attr("checked", true);
}
else {
$(":checkbox[value='"+val+"']").attr("checked", false);
}
});
演示:jsFiddle
答案 1 :(得分:3)
$(".chkbox").change(function() {
$(":checkbox[value="+$(this).val()+"]").prop("checked", this.checked);
}
答案 2 :(得分:0)
你可以这样做。
<强> Live Demo 强>
$(".chkbox").change(function() {
// If checked
if (this.checked)
$(":checkbox[value=" + this.value + "]").attr('checked', true);
else
$(":checkbox[value=" + this.value + "]").attr('checked', false); // find other checkboxes with same value and uncheck them
})
您错过了更改事件的结束时间)
。
答案 3 :(得分:0)
$( ".chkbox" ).change(function() {
var value = $( this ).attr( "value" );
$( ".chkbox[value='" + value + "']" ).prop( "checked", this.checked );
});
答案 4 :(得分:0)
// if user has already sent the survey
if(user_id_value){
var result = confirm("This user already received a survey. Are you sure you want to resend?");
// do not send the survey again
if(!result){
$(":checkbox[value='"+user_id+"']").attr("checked", false);
}// end if not confirmed
}// end if