Agregar y eliminar múltiples clases en jQuery


135

Estoy tratando de agregar y eliminar varias clases en un campo de texto haciendo clic en diferentes botones de radio. No puedo eliminar las clases no deseadas mientras cambio entre diferentes botones de radio.

Mi código para esto es:

// For 1st radio button
if (actionUrl == "search-client-by-id") {
    $("#req").removeClass("validate[required,custom[onlyLetterNumber],maxSize[20],custom[onlyLetterSp]]")
             .addClass("validate[required,custom[onlyNumberSp]]");
}
// For 2nd radio button
else if (actionUrl == "search-client-by-name") {    
    $("#req").removeClass("validate[required,custom[onlyNumberSp]]")
             .addClass("validate[required,custom[onlyLetterNumber],maxSize[20],custom[onlyLetterSp]]");
}

Respuestas:


273

Puedes separar varias clases con el espacio:

$("p").addClass("myClass yourClass");

http://api.jquery.com/addClass/


1
He encontrado una solución para esto, cada vez que uso solo .removeClass () y no necesito escribir ningún nombre de clase en removeClass para eliminar todas las clases agregadas y agregar cualquier clase por elección. Sí, está funcionando ...!
Raman

3
El uso de .removeClass () [sin parámetros] elimina todas las clases del objeto jQuery.
Ahmet

8

Agregar múltiples clases:

$("p").addClass("class1 class2 class3");

o en cascada:

$("p").addClass("class1").addClass("class2").addClass("class3");

Muy similar también para eliminar más clases:

$("p").removeClass("class1 class2 class3");

o en cascada:

$("p").removeClass("class1").removeClass("class2").removeClass("class3");

Entonces, ¿qué quieres eliminar de una clase de múltiples $("p")?
batir

En mi ejemplo, me refiero a todos los párrafos de la página, pero es solo un ejemplo. Puede identificar un artículo específico con una identificación u otra clase.
Andrea_dev

0

La forma más fácil de agregar un nombre de clase usando javascript. Puede ser útil cuando te .siblings()portas mal.

document.getElementById('myId').className += ' active';

55
Esta respuesta no es relevante para la pregunta, que solicitó explícitamente jQuery.
cyberbit

1
Y deberías usar classList de todos modos
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.