这不是任何问题的重复。我尝试了Stackoverflow
个答案,但这些对我没用。
我有一个Select All Checkbox。如果检查了所有其他复选框,如果我取消选中,则取消选中所有其他复选框。这就是我的任务。
我用这些代码尝试过。但是我失败了。 请帮忙。 谢谢。
HTML
<th width="10%" style="background-color: #cce5ff;"><input type="checkbox" id="<?php echo $user['user']->id; ?>" class="checkbox select_all user_<?php echo $user['user']->id; ?>" style="cursor: pointer;"></th>
<td width="10%">
<input type="checkbox" id="view_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" class="is_check_v check_this_<?php echo $user['user']->id; ?>" value="view" <?php if(isset($user['permission'])){if(!empty($user_permissions) && $user_permissions->can_view==1){ echo 'checked';}else{echo '';}}?> name="per">
<input type="hidden" id="h_view_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" name="view_permission[][<?php echo $folder->id; ?>][<?php echo $user['user']->id; ?>]" value="<?php if(!empty($user_permissions)){ echo $user_permissions->can_view;}else{ echo 0; } ?>">
</td>
<td width="10%">
<input type="checkbox" id="edit_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" class="is_check_e check_this_<?php echo $user['user']->id; ?>" value="edit" <?php if(isset($user['permission'])){if(!empty($user_permissions) && $user_permissions->can_edit==1){ echo 'checked';}else{echo '';}}?> name="per">
<input type="hidden" id="h_edit_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" name="edit_permission[][<?php echo $folder->id; ?>][<?php echo $user['user']->id; ?>]" value="<?php if(!empty($user_permissions)){ echo $user_permissions->can_edit;}else{ echo 0; } ?>">
</td>
<td width="7%">
<input type="checkbox" id="delete_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" class="is_check_d check_this_<?php echo $user['user']->id; ?>" value="delete" <?php if(isset($user['permission'])){if( !empty($user_permissions) && $user_permissions->can_delete==1){ echo 'checked';}else{echo '';}}?> name="per">
<input type="hidden" id="h_delete_<?php echo $folder->id; ?>_<?php echo $user['user']->id; ?>" name="delete_permission[][<?php echo $folder->id; ?>][<?php echo $user['user']->id; ?>]" value="<?php if(!empty($user_permissions)){ echo $user_permissions->can_delete;}else{ echo 0; } ?>">
</td>
的jQuery
$(".select_all").click(function () {
user_id = $(this).attr('id');
$.each($('.check_this_'+user_id),function(){
$(this).prop("checked", $('.user_'+user_id).prop("checked"));
$(this).click(function(){
$('.user_'+user_id).prop("checked", false);
});
});
});
答案 0 :(得分:2)
尝试此触发功能对您有所帮助。
$(".select_all").click(function() {
user_id = $(this).attr('id');
$.each($('.check_this_' + user_id), function() {
$(this).prop("checked", $('.user_' + user_id).prop("checked"));
$(this).trigger('change');
$(this).click(function() {
$('.user_' + user_id).prop("checked", false);
});
});
});
答案 1 :(得分:0)
为输入字段指定一个类名。然后在你的jquery函数中,添加以下代码
if($(".select_all").checked == true){
$$('input.class_name').each(function(checkbox) { checkbox.checked = true; });}
else{
$$('input.class_name').each(function(checkbox) { checkbox.checked = false; });}