Javascript sort()没有正确按字母顺序排列

Bea*_*iew 2 javascript sorting jquery

var ccArray = [];
ccArray = $("input:checkbox[name='multiselect_ddlCC']").sort();
Run Code Online (Sandbox Code Playgroud)

我可以告诉我在数组中得到了我需要的值,但是在sort()运行之后,数组顺序被更改但不是按字母顺序.我得到了像ENG,ATL,NAS,CLT,BIM这样的东西.

有任何想法吗?

elc*_*nrs 5

您必须对DOM元素进行排序并重新附加它们.

var $els = $("input:checkbox[name='multiselect_ddlCC']");

var $sorted = $($els.toArray().sort(function(a, b) {
  return a.value > b.value;
}));

$els.replaceWith($sorted);
Run Code Online (Sandbox Code Playgroud)

编辑:刚刚测试过replaceWith,它不起作用,我的不好.这很好用:

$els.each(function(i) {
  $(this).after($sorted.eq(i));
});
Run Code Online (Sandbox Code Playgroud)

演示: http ://jsbin.com/agizoy/1/edit