免責事項 - これが可能かどうかは完全にはわかりません。しかし、その場合でも、可能な代替案または何らかのハックを誰かに指摘してもらいたいと思います。
これが状況です。
ユーザーがリスト上の項目をドラッグ アンド ドロップできるように、jQuery UI Sortable を使用する作業リストがあります。
jQuery:
$(document).ready(function() {
$("#test-list").sortable({
handle : '.big-handle',
update : function () {
var order = $('#test-list').sortable('serialize');
$("#info").load("../sortable/process-sortable.php?"+order);
}
});
});
Ajax 部分は新しい順序をデータベースに保管します。それについて心配する必要はありません。
HTML:
<ul id="test-list">
<li id='listItem_1'><div class='main-item big-handle'><img src='../sortable/arrow.png' alt='move' width='16' height='16' class='handle' /><strong>Item 1</strong></div></li>
<li id='listItem_2'><div class='main-item big-handle'><img src='../sortable/arrow.png' alt='move' width='16' height='16' class='handle' /><strong>Item 1</strong></div></li>
<li id='listItem_3'><div class='main-item big-handle'><img src='../sortable/arrow.png' alt='move' width='16' height='16' class='handle' /><strong>Item 1</strong></div></li>
</ul>
それはすべてうまくいきます。さて、トリッキーな部分です。私のクライアントは、ユーザーが番号を入力できる各リスト項目の横に入力フィールドを必要としています。これonBlur
により、そのリスト項目が指定された位置に移動する必要があります。したがって、ユーザーがリスト項目番号の横のフィールドに「1」を入力すると、3 の場合、そのアイテムは、ドラッグされたかのように、リストの最初の場所に移動するはずです。これはできますか?
リスト全体の完全な解決策を考え出す必要はありません。項目番号を移動するフィールドが必要だとしましょう。3周。