gpt4 book ai didi

javascript - 如何通过 javascript/jquery 对表行列表进行排序?

转载 作者:行者123 更新时间:2023-11-29 20:15:36 25 4
gpt4 key购买 nike

假设我有这个 html:

<table>
<tr>
<th>Sort Order</th>
<th>Name</th>
</tr>

<tr class="item" id="item_1">
<td class="sortorder">1</td>
<td>ABC</td>
</tr>

<tr class="item" id="item_2">
<td class="sortorder">2</td>
<td>DEF</td>
</tr>

<tr class="item" id="item_3">
<td class="sortorder">3</td>
<td>XYZ</td>
</tr>
</table>

我想要的是让用户能够通过拖放对表中的行进行排序(不包括带有 <th> 的第一行,所以所有带有类 .item 的行),然后更新他们的排序顺序。

例如,如果用户将 DEF 拖到第一个位置,然后 ABC 替换它,我希望 DEF 的排序顺序为 1,而 ABC 的排序顺序为 2。

如何做到这一点?

如果需要,我可以将所有项目单独存储在一个 javascript 数组或对象中,这样我就可以遍历它们并在用户更改排序顺序时更新每个项目的排序顺序。

最佳答案

您可以使用 jQuery UI 的可排序列表。它在浏览器中得到很好的支持,并且有很多选项和回调。他们在示例中使用了列表,但您也可以轻松地使用表格。

jQuery UI 可排序文档 - http://jqueryui.com/demos/sortable/
可排序教程/指南 - http://www.petefreitag.com/item/736.cfm

例子:

$('table').sortable({
items : '.item',
update : function(event, ui)
{
alert('sort order updated');

// Display sort order - also checkout serialize() method in jQuery UI Docs
alert('sort order: ' + $(this).sortable('toArray').toString());
}
});

关于javascript - 如何通过 javascript/jquery 对表行列表进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com