繁体   English   中英

将li排序并附加到ul asc

[英]sorting and appending li to ul asc

http://jsfiddle.net/Hms7Y/14/

上面的代码可以很好地根据“级别”插入项目,而无需使用任何复杂的排序算法,但是存在一个问题,当没有现成的标记时,级别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);
  });
});

我已经按照您的期望编辑了小提琴以使其正常工作: 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);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM