jquery atualização classificáveis ??pode trabalhar apenas uma vez?
-
07-07-2019 - |
Pergunta
Precisa de uma maneira de fazer elemento espectáculo no div, mas quando eu uso ajax dados de envio para list.php.it não pode trabalho?
PHP:
<?php
mysql_connect('localhost','user','password');
mysql_select_db('fruit');
$days = 3;
for($i=1;$i<=$days;$i++)
{
?>
<ul id="sortable">
<?php
$sql = "select * from menu where columnNo = '$i' order by orderNo ASC";
$result= mysql_query($sql);
//$row=mysql_fetch_assoc($result);
//print_r($row);
while($row=mysql_fetch_assoc($result))
{
echo '<li id="list_' . $row['id'] . '">' . $row['title'] . "</li>\n";//
}
?>
</ul>
<?php
}
?>
jQuery:
$(function(){
$("ul").sortable({
connectWith:"ul",
update:function()
{
serial = $("ul").sortable("serialize");
$.ajax({
data: serial,
url:"list.php",
type:"post",
error:function(){
alert("Error!");
},
success:function(data){
$("#serverResponse").html(data);
}
});
//alert(serial);
}
});
$("#sortable").disableSelection();
});
list.php
<?php
mysql_connect('localhost','root','xingxing');
mysql_select_db('fruit');
$list = $_POST['id'];
for($i=0;$i<count($menu);$i++)
{
$sql = "update menu set orderNo= '$i' where id = '$menu[$i]'";
mysql_query($sql);
}
?>
mas, o trabalho list.php did't. eu não sei why.could alguém pode me ajudar? THX!
Solução
Não sei se isso vai ajudar, mas a sua tentativa de atualização em cada evento reordenar única (isto é realmente necessário?).
Pode ser sábio para usar um tempo limite JavaScript para atualizar depois de alguns segundos de tempo ocioso após uma atualização. Eu pessoalmente uso este método e isso torna as coisas executar um suave monte.
Na sua configuração jQuery .sortable () adicione a seguinte:
start: function(event, ui){
clearTimeout(allow_update);
},
update: function(event, ui){
allow_update = window.setTimeout(UpdateOrdering, 3000);
}
E, em seguida, adicionar var allow_update = null; em algum lugar e um UpdateOrdering função que é chamada quando o tempo limite expirar (no meu caso 3000 ms), com a sua funcionalidade de atualização em lá.
Espero que isso ajude:)