Hinzufügen und Entfernen mehrerer Klassen in jQuery

135

Ich versuche, mehrere Klassen in einem Textfeld hinzuzufügen und zu entfernen, indem ich auf verschiedene Optionsfelder klicke. Ich kann die unerwünschten Klassen beim Umschalten zwischen verschiedenen Optionsfeldern nicht entfernen.

Mein Code dafür ist:

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

Antworten:

273

Sie können mehrere Klassen mit dem Leerzeichen trennen:

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

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

Headshota
quelle
1
Ich habe eine Lösung dafür gefunden, jedes Mal, wenn ich nur .removeClass () verwende und keinen Klassennamen in removeClass schreiben muss, um alle hinzugefügten Klassen zu entfernen und eine Klasse nach Wahl hinzuzufügen. Ja, es funktioniert ...!
Raman
3
Mit .removeClass () [ohne Parameter] werden alle Klassen des jQuery-Objekts entfernt.
Ahmet
8

Fügen Sie mehrere Klassen hinzu:

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

oder in Kaskade:

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

Sehr ähnlich auch, um weitere Klassen zu entfernen:

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

oder in Kaskade:

$("p").removeClass("class1").removeClass("class2").removeClass("class3");
Andrea_dev
quelle
Was möchten Sie also aus mehreren Klassen entfernen $("p")?
Schneebesen
In meinem Beispiel beziehe ich mich auf alle Absätze auf der Seite, aber es ist nur ein Beispiel. Sie können ein bestimmtes Element mit einer ID oder einer anderen Klasse identifizieren.
Andrea_dev
0

Der einfachste Weg, den Klassennamen mit Javascript anzuhängen. Es kann nützlich sein, wenn Sie .siblings()sich schlecht benehmen.

document.getElementById('myId').className += ' active';
Argoden
quelle
5
Diese Antwort ist nicht relevant für die Frage, die explizit nach jQuery gefragt hat.
Cyberbit
1
Und Sie sollten trotzdem