簡體   English   中英

使用基於“data-”屬性的 JQuery 對 Div 進行排序

[英]Sorting Divs With JQuery Based On “data-” Attribute

我正在嘗試使用 jquery 根據它的data-enter屬性對 div 進行排序。 這是我的 JQuery:

            let result = $("#tableEls .dataDiv").sort(function (a, b) {
                console.log(+$(a).data("enter") + " < " + +$(b).data("enter"));
                return +$(a).data("enter") < +$(b).data("enter");
            }).appendTo("#tableEls");

            console.log(result);

但是,當它被調用時,它不會對 div 重新排序。 以下是div:

我正在嘗試排序的 Div。

此外,這是控制台輸出:

控制台輸出

我在 StackOverflow 上嘗試了許多不同的解決方案,但找不到任何適合我的解決方案。 我不確定我是否做錯了什么,但我看不出任何錯誤。

此外,這里是 HTML 頁面本身的屏幕截圖,其中四個 div 中的每一個都帶有黑色邊框:

HTML頁面

當單擊Sort Rows按鈕時,在從上面運行 JQuery 之前,從每個表中輸入單元格並將其添加為每個 div 的數據輸入屬性。 所以在這個例子中,第一個和第二個 div 的位置應該交換。

您的排序函數必須返回 N 或 -N 或 0 而不是布爾值:

let result = $("#tableEls .dataDiv").sort(function (a, b) {
            console.log(+$(a).data("enter") + " - " + +$(b).data("enter"));
            return +$(a).data("enter") - +$(b).data("enter");
        }).appendTo("#tableEls");

        console.log(result);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM