Aggiungi e rimuovi più classi in jQuery


135

Sto cercando di aggiungere e rimuovere più classi in un campo di testo facendo clic su diversi pulsanti di opzione. Non riesco a rimuovere le classi indesiderate mentre si passa da un pulsante di opzione all'altro.

Il mio codice per questo è:

// 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]]");
}

Risposte:


273

Puoi separare più classi con lo spazio:

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

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


1
Ho trovato una soluzione per questo, ogni volta che uso solo .removeClass () e non è necessario scrivere alcun nome di classe in removeClass per rimuovere tutte le classi aggiunte e aggiungere qualsiasi classe a scelta. Sì, funziona ...!
Raman,

3
L'uso di .removeClass () [senza parametri] rimuove tutte le classi dell'oggetto jQuery.
Ahmet,

8

Aggiungi più classi:

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

o in cascata:

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

Molto simile anche per rimuovere più classi:

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

o in cascata:

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

quindi cosa vuoi rimuovere una classe da più $("p")?
frusta il

nel mio esempio mi riferisco a tutti i paragrafi della pagina ma è solo un esempio. È possibile identificare un articolo specifico con un ID o un'altra classe.
Andrea_dev,

0

Il modo più semplice per aggiungere il nome della classe usando JavaScript. Può essere utile quando .siblings()si comportano male.

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

5
Questa risposta non è rilevante per la domanda, che ha chiesto esplicitamente jQuery.
cyberbit

1
E dovresti comunque utilizzare classList
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.