0

<ul>jQuery UI で並べ替え可能な複数の列があります。<li>内部の位置を保存する<ul>には、データをシリアル化する必要があります。

$(function() {
 $("ul.sortable").sortable({
    connectWith: '.sortable',
    update: function(event, ui) {
   /* var position = $('.sortable').sortable('serialize', {
            key: 'menu',
            connected: true
        });*/
    $('div').empty().html( $('.sortable').serial() );
    }
  });
});


(function($) {
$.fn.serial = function() {
 var array = [];
 var $elem = $(this); 
    $elem.each(function(i) {
      var menu = this.id;
        $('li', this).each(function(e) {
                array.push( menu + '['+e+']=' + this.id  );
        });
    });
    return array.join('&');      
    }

})(jQuery);

これは私がデータをシリアル化する方法です(別のスレッドでこの例を見つけました)

データベースに保存できるように、列のIDと行のIDが必要です。

出力は次のようになります: menu1[0]=id_2&menu1[1]=id_1&menu2[0]=id_3&menu2[1]=id_4&menu3[0]=id_5&menu3[1]=id_6

したがって、「menu1、menu2 ...」は列 ID であり、id_1、id_2 は行 ID です。そしてもちろん、どこに置くべきかを知る必要があり<li>、[] の間の数字を抽出することでそれを行います。

だから私の質問は、私が言及したすべての関連情報を抽出して、それらの情報をデータベースに送信できるようにする方法です。

4

1 に答える 1