1

チェックボックスの大きなリスト (600 以上) がありますが、js を使用してアルファベット順に並べ替え、dom を操作して再配置することはできますか?

から

 <form id="stuff">
      <input type="checkbox" value="bbb" /> bbb
      <input type="checkbox" value="aaa" /> aaa
      <input type="checkbox" value="ccc" /> ccc
 </form>

 <form id="stuff">
      <input type="checkbox" value="aaa" /> aaa
      <input type="checkbox" value="bbb" /> bbb
      <input type="checkbox" value="ccc" /> ccc
 </form>
4

1 に答える 1

5

それらをラベルでラップできる場合は、とにかくこれを行うことをお勧めします。これを行うことができます:

HTML

<form id="stuff">
    <label>
        <input type="checkbox" value="bbb" />bbb</label>
    <label>
        <input type="checkbox" value="aaa" />aaa</label>
    <label>
        <input type="checkbox" value="ccc" />ccc</label>
</form>

脚本

var sortByText = function (a, b) {
     return $.trim($(a).text()) > $.trim($(b).text());
 }
 $(document).ready(function () {

     var sorted = $('#stuff label').sort(sortByText);
     $('#stuff').append(sorted);

 });

デモ

于 2013-07-02T18:56:25.623 に答える