miércoles, 26 de julio de 2017

Angular JS checkboxes - Errores comúnes

Hay un par de errores que debes evitar cometer para asegurarte de un buen funcionamiento de los checkboxes en angularjs

El primero es asignar directamente el valor de true o false a una variable, y que esta no se encuentre dentro de un objeto, es decir, siempre debemos crear un objeto para que cada propiedad de este sea el que contenga el valor del checkbox y no asignarlo directamente a una variable.

Este código esta mal escrito

<input type="checkbox" ng-model="variable">

El resultado en este ejemplo siempre será false

Este código esta bien escrito

<input type="checkbox" ng-model="objeto.variable">

Aquí el resultado será true o false de acuerdo al estado del checkbox

Otro error que no debes cometer y debes evitar es asignar atributos a un input checkbox con attr, en mi caso el error fue muy específico y tampoco me dejaba que los valores del checkbox se obtuvieran exitosamente, para evitarlo usa la funcion prop en su lugar

Código incorrecto

$('.clase').attr('disabled', '');

Código correcto

$('.clase').prop('disabled', true);

Para quitar el atributo en este caso utilizaríamos $('.clase').removeProp('disabled');

No hay comentarios.:

Publicar un comentario