0

この「並べ替え可能な例」を見ていると、ユーザーが数字を再配置できることがわかります。これは、上記の例のソースです。

  <!doctype html>
  <html lang="en">
<head>
  <meta charset="utf-8" />
  <title>jQuery UI Sortable - Display as grid</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css" />
  <style>
  #sortable { list-style-type: none; margin: 0; padding: 0; width: 450px; }
  #sortable li { margin: 3px 3px 3px 0; padding: 1px; float: left; width: 100px; height: 90px; font-size: 4em; text-align: center; }
  </style>
  <script>
  $(function() {
    $( "#sortable" ).sortable();
    $( "#sortable" ).disableSelection();
  });
  </script>
</head>
<body>

<ul id="sortable">
  <li class="ui-state-default">1</li>
  <li class="ui-state-default">2</li>
  <li class="ui-state-default">3</li>
  <li class="ui-state-default">4</li>
  <li class="ui-state-default">5</li>
  <li class="ui-state-default">6</li>
  <li class="ui-state-default">7</li>
  <li class="ui-state-default">8</li>
  <li class="ui-state-default">9</li>
  <li class="ui-state-default">10</li>
  <li class="ui-state-default">11</li>
  <li class="ui-state-default">12</li>
</ul>


</body>
</html>

この例を並べ替えて、数値を最小から最大に並べ替え、ユーザーが数値を再配置できないようにすることはできますか? たとえば、12 をドラッグして 1 の前に配置しようとすると、自動的に元の場所に戻ります。

ありがとうございました

4

1 に答える 1

0

sortable を呼び出さないでください。リストを逆順に並べ替えるだけです。sortable 関数を使用すると、ユーザーは項目をドラッグできます。disableSelection を呼び出さなかった場合、リスト内の項目は選択可能になります。

$(function() {
    try {
            var html = $('#sortable').html();
            var arr = html.split('</li>');
            html = '';
            for (var i = arr.length - 1; i >= 0; --i) {
                    html += arr[i] + "</li>";
            }
            $('#sortable').html(html);
    } catch (e) {
            alert(e);
    }

});

于 2013-11-11T07:17:00.673 に答える