JQuery. Load () sıralanabilir listeden. Sıralanabilir () işlevini kaldırma

0 Cevap php

Ben mümkün olduğunca az kod ile benim sorunum açıklamaya çalışacağım.

Temelde ben olağan şekilde bağlı çeşitli sıralanabilir listeleri var. Listedeki her öğe ilgili öğeler üzerinde bir düğme ile değiştiriliyor bazı gizli unsurları vardır. SlideUp için liste öğesi neden olur ve listeden çıkarılabilir ikinci bir düğmesi vardır - o zaman yeni bir liste gönderiliyor. Bu başarılı aldıktan sıralanabilir listesini yenilemek için. Yük () işlevini kullanan bir ajax çağrısı ile birlikte çalışır.

Sorun:. Ben aldıktan sıralanabilir listesini yenilemek için load () kullandığınızda, yeni bir liste öğesi mevcut ancak liste onun tür-yeteneği ve her liste öğesinin tüm gizli öğeleri kaybeder görüntülenir. Herhangi bir fikir neden. Yük () işlevi yenilenmiş sayfa öğelerinin etkileşim kaldırır?

Bu öğeyi kaldırmak ve yeni bir listesini yenilemek için kod:

$(document).ready(function click(){
$(".finished").click(function() {

  if (confirm('Are you sure  is complete?')) {

  $(this).closest(".card").slideUp();

  var id = $(this).closest(".card").find(".hiddenid").val();
  var machinequantity = $(this).closest(".card").find(".machinequantity").val();

  $.ajax({

       url: "update_item_machine_complete.php",
       type: "POST",
       data: "&id="+id+"&machinequantity="+machinequantity,        
       success: function() {
                           $('#complete').load('index.php #sortable4')         
                           }
     });

    }
  });
});

Burada alıcı listesinin bir örnek:

            <div id="complete" class="box">
    <ul id="sortable4" class="sortable">
    <li class="notsortable"><h1>Complete</h1></li>
<?php

include("php/database_connect.php");


$result = mysql_query("SELECT * FROM orders WHERE misc='complete' ORDER BY columnpos   ASC ");

while($row = mysql_fetch_array($result))

              {
         echo'  

        <li id="id_' . $row['id'] . '">
         <div class="card">
         <table>
         <tr>
         <td class="left">' . $row['customer'] . '</td>
         <td></td>
         <td class="right">' . $row['ponumber'] . '</td>
         </tr>
         <tr>
         <td class="left">' . $row['partnumber'] . '</td>
         <td><div class="show"></div></td>
         <td class="right">' . $row['quantity'] . ' x Black</td>
         </tr>
         </table>
         <div class="hide">
         <p>Quantity Done: <span><input class="machinequantity" type="text" value="' . $row['quantity'] . '" /><input type="submit" value="update" /></span></p>
         <p><input class="finished" type="submit" value="Finished" /></p>
         <input class="hiddenid" type="hidden" value="' . $row['id'] . '" />
         </div>
         </div>
         </li>

         ';
         }
?>






    </ul>
    </div>

EDIT:. Bu benim sütun ve konumunu kaydetmek için kullanıyorum sıralanabilir () kodu:

$(document).ready(function {
$("#sortable01, #sortable0, #sortable1, #sortable2, #sortable3, #sortable4").sortable({
connectWith : ".sortable",
items : "li:not(.notsortable)",
receive  : function(event, ui){ 

         var column = $(this).parent().attr('id');
         var index = ui.item.index() + 1;
         var id = $("#"+column+" li:nth-child("+index+") .hiddenid").val();


         $("#"+column+" li:nth-child("+index+") ").addClass('notsortable');

         $.ajax({

                 url: "update_column.php",
                 type:"POST",
                 data: "column="+column+
                       "&id="+id,
                 success: function(){


                           $("#"+column+" li:nth-child("+index+")   ").removeClass('notsortable');

                                      }        

                });

                },

beforeStop : function (event, ui) {



                 $.ajax({

                 url: "update_column_order.php",
                 type:"POST",
                 data: {
                            sort0:$('#sortable0').sortable('serialize'),
                        sort1:$('#sortable1').sortable('serialize'),
                        sort2:$('#sortable2').sortable('serialize'),
                        sort3:$('#sortable3').sortable('serialize')
                       }

                });



                            },







 })
.disableSelection();
  $(".hide").hide();
 });

0 Cevap