贝利信息

jQuery实现点击按钮排序特定下拉列表项

日期:2025-12-14 00:00 / 作者:碧海醫心

本文详细阐述了如何使用jquery在网页中实现点击特定按钮时,仅对与其关联的下拉列表(`

  1. $(this):在事件处理函数内部,$(this) 指向当前被点击的 .dropbtn 元素。
  2. .parent():从当前按钮向上遍历,获取其直接父元素,即 div.dropdownbox.buttonWrap。
  3. .next(".menu"):从父元素向下遍历,获取其紧邻的下一个兄弟元素,并且该兄弟元素必须带有 .menu 类。这正是我们想要排序的
      元素。

将这些方法组合起来,我们就能得到一个精确的目标列表选择器:$(this).parent().next(".menu")。

完整代码示例

下面是修改后的JavaScript代码,以及完整的HTML和CSS,展示了如何实现点击按钮排序特定下拉列表的功能。

JavaScript (jQuery)

$(document).ready(function() {
    $(".dropbtn").click(function() {
        // 精确选择与当前点击按钮关联的下拉列表
        var $list = $(this).parent().next(".menu");

        // 分离所有子元素,进行排序,然后重新添加到列表中
        $list.children().detach().sort(function(a, b) {
            // 使用 localeCompare 进行文本内容的字母排序
            return $(a).text().localeCompare($(b).text());
        }).appendTo($list);
    });
});

代码解释: