對不起,這可能是一個很長的名字,請耐心等待。我有三個可排序(jqueryUI)列表。列表all-colls-list,coll-selected-list和coll-grouped-list。我可以把列表的所有項目列表納入coll-selected列表和coll-grouped-list。當您使用jquery刪除另一個class名稱時類會失去一個名稱
因此,例如,我可以把「列表項」到兩個科爾選擇列表,並在同一時間科爾 - 分組列表,並且該項目將在保留所有colls列表。當項目被添加到coll-selected-list時,在all-colls-list的列表項目上附加類名稱「selAdded」。當一個項目被添加到科爾 - 分組列表,類名「groupAdded」被附加到列表項全colls列表 前:
<li class"selAdded">Blah blha</li> OR
<li class"groupAdded">Blah blha</li> OR (when item is put in both lists)
<li class"selAdded groupAdded">Blah blha</li>
當我刪除的項目從coll-grouped-list或coll-selected-list,它刪除all-colls-list中該項目的相應類名稱。但是,如果存在兩個類名稱,並且只刪除一個,由於某種原因,它刪除了兩個! 因此,如果我要從中刪除「selAdded」 它似乎只剩<li>Blah blha</li>
我做了這裏http://jsfiddle.net/noscirre/xf8j2/
小提琴這是我的代碼,刪除類名稱:
if ($("#all-colls-list li:contains(" + itemName + ")").hasClass("selAdded")) {
$("#all-colls-list li:contains(" + itemName + ")").removeClass("selAdded"); }
,這是檢查的代碼該類的存在一旦被刪除:
receive: function (event, ui) {
alert($(this).attr('class'));
if ($(this).hasClass("groupAdded") && $(this).hasClass("selAdded")) {
alert("both");
//Do nothing
}
if ($(this).hasClass("groupAdded") && !$(this).hasClass("selAdded")) {
alert("group"); //Do nothing
}
if (!$(this).hasClass("groupAdded") && $(this).hasClass("selAdded")) {
alert("sel"); //Do nothing
}
if (!$(this).hasClass("groupAdded") && !$(this).hasClass("selAdded")) {
alert("none"); //Do nothing
}
}
任何幫助將大大增值ED
爲什麼只是不使用.removeClass(「selAdded」); – 2012-07-31 12:57:43