Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana Meneruskan Perubahan Dibuat dengan UI jQuery Boleh Diisih ke Pangkalan Data?

Bagaimana Meneruskan Perubahan Dibuat dengan UI jQuery Boleh Diisih ke Pangkalan Data?

Linda Hamilton
Linda Hamiltonasal
2024-11-05 16:27:02743semak imbas

How to Persist Changes Made with jQuery UI Sortable to a Database?

JQuery UI Sortable: Persist Order Changes to a Database

Apabila menggunakan jQuery UI sortable function untuk membenarkan pengguna menyusun semula elemen, ia selalunya wajar untuk menyimpan pesanan baharu ke pangkalan data. Begini cara untuk mencapainya:

Ciri boleh susun UI jQuery menyediakan kaedah bersiri untuk tujuan ini. Ia mencipta pelbagai elemen menggunakan ID mereka. Sebagai contoh, senarai seperti ini:

<code class="html"><ul id="sortable">
  <li id="item-1"></li>
  <li id="item-2"></li>
  ...
</ul></code>

Apabila kaedah bersiri dicetuskan, ia menghasilkan rentetan pertanyaan POST seperti ini:

item[]=1&item[]=2

Dengan mengandaikan setiap ID elemen sepadan dengan pangkalan data ID, anda boleh lelaran melalui tatasusunan POST dan mengemas kini kedudukan elemen dalam pangkalan data.

Berikut ialah contoh dalam PHP:

<code class="php">$i = 0;

foreach ($_POST['item'] as $value) {
  // Execute statement:
  // UPDATE [Table] SET [Position] = $i WHERE [EntityId] = $value
  $i++;
}</code>

Untuk memulakan pengemaskinian bersiri dan pesanan selepas perubahan, gunakan kod jQuery ini:

<code class="javascript">$('#element').sortable({
  axis: 'y',
  update: function (event, ui) {
    var data = $(this).sortable('serialize');

    // POST to server using $.post or $.ajax
    $.ajax({
      data: data,
      type: 'POST',
      url: '/your/url/here'
    });
  }
});</code>

Kod ini mencipta permintaan POST dengan pesanan yang dikemas kini dan menghantarnya ke URL yang ditentukan.

Atas ialah kandungan terperinci Bagaimana Meneruskan Perubahan Dibuat dengan UI jQuery Boleh Diisih ke Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn