Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery按字母顺序对多层列表进行排序_Javascript_Jquery_Html_List - Fatal编程技术网

Javascript 如何使用jquery按字母顺序对多层列表进行排序

Javascript 如何使用jquery按字母顺序对多层列表进行排序,javascript,jquery,html,list,Javascript,Jquery,Html,List,我正在尝试订购多层列表。我遇到的问题是,子列表与我的主列表合并,这不是我的意图。 我使用的代码 $(“#测试”)。单击(函数(e){ $(“.first ul”)。每个(函数(){ $(this).find('li').sort(函数(a,b){ var aText=$(a).text(), b文本=$(b).text(); 返回aTextb文本1:0; }).附于(本); }); }); 更改$(此)。查找('li')到$(此)。子项('li') 这

我正在尝试订购多层列表。我遇到的问题是,子列表与我的主列表合并,这不是我的意图。 我使用的代码

$(“#测试”)。单击(函数(e){
$(“.first ul”)。每个(函数(){
$(this).find('li').sort(函数(a,b){
var aText=$(a).text(),
b文本=$(b).text();
返回aTextb文本1:0;
}).附于(本);
});  
});

更改
$(此)。查找('li')
$(此)。子项('li')

这样,每个排序将应用于同级
li
元素

$(“#测试”)。单击(函数(e){
$(“.first ul”)。每个(函数(){
$(this).children('li').sort(函数(a,b){
var aText=$(a).text(),
b文本=$(b).text();
返回aTextb文本1:0;
}).附于(本);
});
});


看起来您正在抓取所有
li
元素,而不仅仅是特定“层”上的元素。你可以做递归排序吗?你有递归排序的例子吗?。虽然我同意加布里埃尔·彼得里奥利的回答。您的查询方法有缺陷。解决这个问题可能比递归方法更直接