Tambah dan hapus beberapa kelas di jQuery

135

Saya mencoba menambah dan menghapus beberapa kelas pada bidang teks dengan mengklik tombol radio yang berbeda. Saya tidak dapat menghapus kelas yang tidak diinginkan sambil beralih di antara berbagai tombol radio.

Kode saya untuk ini adalah:

// 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
sumber

Jawaban:

273

Anda dapat memisahkan beberapa kelas dengan spasi:

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

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

Headshota
sumber
1
Saya telah menemukan solusi untuk ini, setiap kali saya menggunakan .removeClass () saja dan tidak perlu menulis nama kelas apa pun di removeClass untuk menghapus semua kelas yang ditambahkan dan menambahkan kelas apa saja dengan pilihan. Ya itu berfungsi ...!
Raman
3
Menggunakan .removeClass () [tanpa parameter] menghapus semua kelas objek jQuery.
Ahmet
8

Tambahkan beberapa kelas:

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

atau dalam kaskade:

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

Sangat mirip juga untuk menghapus lebih banyak kelas:

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

atau dalam kaskade:

$("p").removeClass("class1").removeClass("class2").removeClass("class3");
Andrea_dev
sumber
jadi apa yang ingin Anda hapus dari beberapa kelas $("p")?
mengocok
dalam contoh saya, saya merujuk ke semua paragraf di halaman tetapi itu hanyalah sebuah contoh. Anda dapat mengidentifikasi item tertentu dengan ID atau kelas lain.
Andrea_dev
0

Cara termudah untuk menambahkan nama kelas menggunakan javascript. Ini bisa bermanfaat saat .siblings()bertingkah buruk.

document.getElementById('myId').className += ' active';
argoden
sumber
5
Jawaban ini tidak relevan dengan pertanyaan, yang ditanyakan secara eksplisit untuk jQuery.
cyberbit
1
Dan Anda harus tetap menggunakan classList