/ / JQuery - las casillas de verificación no se activan - php, javascript, jquery, yii

JQuery - las casillas de verificación no se activan - php, javascript, jquery, yii

Estoy teniendo un problema con jquery.

Tengo una casilla de verificación con ID "#checkAll" ycasillas de verificación con la clase "casillas de verificación". Me gustaría activar todas las casillas de verificación cuando la casilla de verificación con ID "checkAll" está marcada, y me gustaría desactivar todas las casillas de verificación cuando la casilla de verificación con ID "checkAll" esté marcada.

Pero, lo que tengo ahora es que cuando hago clic por primera vez en la casilla de verificación (#checkAll), todas las demás casillas de verificación se activan y cuando por primera vez hago clic en la casilla de verificación (#checkAll), todas las demás casillas de verificación también se desactivan.

Pero, cuando intento hacer clic en la casilla de verificación (#checkAll) en la segunda vez, todas las demás casillas de verificación no están activadas.

No sé por qué sucede esto.

¡Por favor, ayúdame!

Este es mi javascript manejo de eventos.

ADMIN.event = (function() {

function _init(){

$(function(){

var checkAll = $("#checkAll"),
checkboxes = $(".checkboxes");

checkAll.click(function(){
if($(this).is(":checked")){
checkboxes.attr("checked", "checked");
} else {
checkboxes.removeAttr("checked");
}
})

});

}


_init();


}());

Este es mi archivo de vista en php.

<table class="fullTable">
<tr class="listTableTr">
<th class="listTableTh tinyTh"><input type="checkbox" name="" id="checkAll" /></th>
<th id="articleTitleTh" class="listTableTh">title</th>

</tr>

<?php foreach($postData as $post): ?>

<td class="listTableTd"><input type="checkbox"  name="" class="checkboxes" /></td>
<td class="listTableTd"><a href="<?php echo "index.php?r=admin/post/edit&post=".$post["id"]; ?>"><?php echo $post["title"];?></a></td>

<?php endforeach; ?>

</table>

Respuestas

3 para la respuesta № 1

Prueba con .prop() me gusta

checkAll.click(function(){
checkboxes.prop("checked",this.checked);
});

Y es mejor usar incluso con .on() me gusta

checkAll.on("click" , function(){
checkboxes.prop("checked",this.checked);
});

1 para la respuesta № 2

Prueba esto :

    $("#checkAll").on("click",function(){
if($("#checkAll").is(":checked")) {
$(".checkboxes").attr("checked",true);
} else {
$(".checkboxes").attr("checked",false);
}
});

1 para la respuesta № 3

MANIFESTACIÓN
Prueba esto

$("#checkAll").click(function () {
if ($(this).is(":checked"))
$(".checkboxes").prop("checked","checked");
else
$(".checkboxes").prop("checked",false);
});