小さな問題が発生しています。「大量」の並べ替えを行うために、Jquery UI でソート可能なプラグインを使用しています。ただし、ユーザーが行ったすべての並べ替えを「キャンセル」できるようにしたいと考えています。<li>
HTML5を介して要素に保存された「初期」注文がすでにあります。したがって、最初の「順序」に従って、リストを元の順序に戻そうとしています。ただし、この関数呼び出しの後には何も表示されません... 各 LI に関連付けられた「データ」データを保持したいので、インナー html を単に置き換えたくありません。
function reverseBackCellsOrder(line) {
var vals = {};
var count = 0;
var ul = $("#"+line+"-ul-sortable .sortable-items-"+line);
ul.each(function (index){
vals[$(this).data("order")] = $(this)[0];
count++;
});
for(var i = 0; i < count; i++)
{
ul[i] = vals[i];
}
}
編集#1:この説明の「あいまいさ」については申し訳ありません。関数が呼び出された後に変数を調べたところ、「ul」要素は、必要に応じて並べ替えられた要素を保持していますが、ページに正しく表示されません。あたかも再描画が「必要」であるかのように。