2013-10-18 40 views
0

http://jsfiddle.net/Hms7Y/14/分揀和追加里到UL ASC

上述工作的代碼以及用於根據不使用任何複雜的排序算法中「等級」插入項目,但有一個問題,當沒有現成的標記,2級將仍然在1級的頂..

$(document).ready(function() { 
    $('button').click(function() { 
    var lvl = $('select').val(); 
    var ref = $('li.level' + lvl).last(); 
    var newLi = $('<li class="level'+ lvl + '">' + lvl + ' </li>'); 

    console.log(ref); 

    (ref.length > 0) ? newLi.insertAfter(ref) : $("ul").append(newLi); 
    }); 
}); 
+1

你能否再解釋一下你的問題,目前還不清楚你在問什麼。 –

+0

@RoryMcCrossan當您單擊添加時,它將菜單中的數字添加到列表中。該列表應該是排序的,全部爲1,然後是全部2,然後是全部3。 Buf如果你添加的第一件事是2或3,它不起作用。 – Barmar

+0

這不是您在之前的問題中接受的答案嗎?如果它不起作用,你爲什麼接受它?事實上,這至少是你發佈的第三個問題,基本上是關於同樣的問題。 – Barmar

回答

0

我已經編輯撥弄你的工作,你希望:http://jsfiddle.net/Hms7Y/23/

基本上我已經添加的每次點擊這個控制:

if($("ul").children().length>0){ 
    $("li").each(function(){ 
     if(lvl <= parseInt($(this).html())){ 
      newLi.insertBefore($(this)); 
     }else{ 
      newLi.insertAfter($(this)); 
     } 
    }); 
}else{ 
    $("ul").append(newLi); 
} 
+0

它不工作,你嘗試添加更多的項目.. –