我有以下 HTML 架构
<div id="txm_left_column">
<div class="id">
<h2>Some Name1</h2>
<div>// another list</div>
</div>
<div class="id">
<h2>Some Name2</h2>
<div>// another list</div>
</div>
</div>
用户可以将项目添加到该列表中,并且所有项目都Divs
应按h2
. 我有两个选择
1)我需要能够在字母顺序正确的2个div之间插入一个新项目
2) 完全重新组织列表。
我的方法是选项 2,Divs
按名称按字母顺序排序h2
我想出了下面的代码来尝试订购它,但是这段代码创建了一个新的有序H2
s 列表,没有div
s。然后我尝试通过使用相同的函数来执行选项 1),但尝试插入类似这样(upA < upB) ? -1 : (NEW_ITEM_NAME> upB) ? 1 : 0
的内容,但这会导致问题,因为这不会破坏排序。
我想知道两件事,一是我怎么能打破排序,因为 return 0 不会打破它。或有关如何组织我的列表的任何帮助。
谢谢
jQuery("#txm_left_column > div").children("h2").sort(function(a, b) {
var upA = jQuery(a).text().toUpperCase();
var upB = jQuery(b).text().toUpperCase();
return (upA < upB) ? -1 : (upA > upB) ? 1 : 0;
}).appendTo(selector);