在jQuery中按字母和数字排序

0248881

如您所见,它按字母顺序和数字顺序对95%的div排序,但它有错误。不知道为什么这么做。如果多次按下按钮,您将明白我的意思。谢谢!

它总是看起来像是第一,第二和第四盒。

var $divs = $("div.box");

$('#alphBnt').on('click', function() {
  var alphabeticallyOrderedDivs = $divs.sort(function(a, b) {
    return $(a).find("h1").text() > $(b).find("h1").text();
  });
  $("#container").html(alphabeticallyOrderedDivs);
});

$('#numBnt').on('click', function() {
  var numericallyOrderedDivs = $divs.sort(function(a, b) {
    return $(a).find("h2").text() > $(b).find("h2").text();
  });
  $("#container").html(numericallyOrderedDivs);
});
body {
  background: #eee;
  font-family: sans-serif;
}
.box {
  background: lightgreen;
  height: 200px;
  width: 200px;
  display: inline-block;
}
.box h1 {
  color: white;
  font-size: 1em;
  text-align: center;
}
.box h2 {
  color: black;
  font-size: 2.5em;
  text-align: center;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="wrap">
  <button id="alphBnt">Alphabetical</button>
  <button id="numBnt">Numerical</button>
  <div id="container">

    <div class="box">
  <h1>A</h1>
    <h2>7/10</h2>  
  </div>

  <div class="box">
    <h1>B</h1>
    <h2>8/10</h2>
  </div>

  <div class="box">
    <h1>C</h1>
    <h2>6.8/10</h2>  
  </div>

  <div class="box">
    <h1>D</h1>
    <h2>8/10</h2>
  </div>
  
  <div class="box">
  <h1>E</h1>
    <h2>510.25</h2>
  </div>
  
  <div class="box">
    <h1>F</h1>
    <h2>5,512</h2>
  
  <div class="box">
    <h1>G</h1>
    <h2>7/10</h2>  
  </div>

  <div class="box">
  <h1>H</h1>
    <h2>8/10</h2>
  </div>

  <div class="box">
    <h1>I</h1>
    <h2>6.8/10</h2>  
  </div>

  <div class="box">
    <h1>J</h1>
    <h2>8/10</h2>
  </div>
  
  <div class="box">
    <h1>K</h1>
    <h2>510.25</h2>
  </div>
  
  <div class="box">
    <h1>L</h1>
    <h2>5,512</h2>
  </div>

波尔·克鲁伊特

sort()的回调函数期望将负数,0或正值作为返回值,因为您返回的布尔值会将其false视为0,该值被视为相等。如果您尝试使用此排序功能,则会看到它起作用:

$('#alphBnt').on('click', function () {
    var alphabeticallyOrderedDivs = $divs.sort(function (a, b) {
        var at = $(a).find("h1").text();
        var bt =  $(b).find("h1").text();
        return at > bt ? 1 : (at < bt ? -1 : 0);
    });
    $("#container").html(alphabeticallyOrderedDivs);
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

按字母和数字顺序对 .Getfiles 进行排序

来自分类Dev

按数字对字母排序

来自分类Dev

用字母和数字在python中对表格进行排序

来自分类Dev

R:按字母和数字顺序对字符串和字符值与数字值排序的向量

来自分类Dev

如何在shell中按数字对字母数字进行排序

来自分类Dev

R:按字母顺序和数字顺序对带有字符和数字值的字符串向量排序

来自分类Dev

在javascript或jQuery中字母数字排序

来自分类Dev

jQuery - 计算字段中字母和数字的数量

来自分类Dev

Java-按字母顺序和数字顺序对带有对象的数组列表进行排序

来自分类Dev

Java-按字母顺序和数字顺序对带有对象的数组列表进行排序

来自分类Dev

按字母数字顺序排序

来自分类Dev

使用数字占位符从文件中按字母顺序排序

来自分类Dev

使用jQuery要求用户按下键盘上的每个字母和数字

来自分类Dev

在数组perl中按数字对数字和按字母顺序排序

来自分类Dev

在同一列表中按字母顺序和数量排序

来自分类Dev

如何在JavaScript中对包含字母和数字字符串的数组进行排序

来自分类Dev

数组排序混合字母和数字内容在Firefox中不工作

来自分类Dev

在遵守一些(主要是排序)条件的同时,在网格中显示字母和数字

来自分类Dev

如何在JavaScript中对包含字母和数字字符串的数组进行排序

来自分类Dev

按字母顺序对数据表进行字母排序,然后按R中的数字值排序

来自分类Dev

按字母数字排序文本列(数字前的字母)

来自分类Dev

jQuery-如何从字母和数字混合的字符串中获取数字

来自分类Dev

在VI中搜索字母和数字

来自分类Dev

按字母,数字,特殊字符顺序排序

来自分类Dev

Postgres / ActiveRecord按字母排序,然后按数字排序?

来自分类Dev

Oracle中的字母数字排序

来自分类Dev

VIM中的字母数字排序

来自分类Dev

在Excel中字母数字排序?

来自分类Dev

按数字顺序对包含文本和数字的列进行排序

Related 相关文章

  1. 1

    按字母和数字顺序对 .Getfiles 进行排序

  2. 2

    按数字对字母排序

  3. 3

    用字母和数字在python中对表格进行排序

  4. 4

    R:按字母和数字顺序对字符串和字符值与数字值排序的向量

  5. 5

    如何在shell中按数字对字母数字进行排序

  6. 6

    R:按字母顺序和数字顺序对带有字符和数字值的字符串向量排序

  7. 7

    在javascript或jQuery中字母数字排序

  8. 8

    jQuery - 计算字段中字母和数字的数量

  9. 9

    Java-按字母顺序和数字顺序对带有对象的数组列表进行排序

  10. 10

    Java-按字母顺序和数字顺序对带有对象的数组列表进行排序

  11. 11

    按字母数字顺序排序

  12. 12

    使用数字占位符从文件中按字母顺序排序

  13. 13

    使用jQuery要求用户按下键盘上的每个字母和数字

  14. 14

    在数组perl中按数字对数字和按字母顺序排序

  15. 15

    在同一列表中按字母顺序和数量排序

  16. 16

    如何在JavaScript中对包含字母和数字字符串的数组进行排序

  17. 17

    数组排序混合字母和数字内容在Firefox中不工作

  18. 18

    在遵守一些(主要是排序)条件的同时,在网格中显示字母和数字

  19. 19

    如何在JavaScript中对包含字母和数字字符串的数组进行排序

  20. 20

    按字母顺序对数据表进行字母排序,然后按R中的数字值排序

  21. 21

    按字母数字排序文本列(数字前的字母)

  22. 22

    jQuery-如何从字母和数字混合的字符串中获取数字

  23. 23

    在VI中搜索字母和数字

  24. 24

    按字母,数字,特殊字符顺序排序

  25. 25

    Postgres / ActiveRecord按字母排序,然后按数字排序?

  26. 26

    Oracle中的字母数字排序

  27. 27

    VIM中的字母数字排序

  28. 28

    在Excel中字母数字排序?

  29. 29

    按数字顺序对包含文本和数字的列进行排序

热门标签

归档