首页  >  文章  >  后端开发  >  关于PHP+jQuery-ui拖动浮动层排序并保存到数据库实例

关于PHP+jQuery-ui拖动浮动层排序并保存到数据库实例

藏色散人
藏色散人转载
2020-03-16 13:59:433172浏览

PHP+jQuery-ui实现的拖动浮动层排序布局并将拖动后的浮动层位置排序结果保存到数据库实例。

65908cc6b9be00de4a41a0eb494560a.png

首先引入jQuery库和jquery-ui.min.js,接着放置一个拖动时的加载图片,和从数据库读取出来的多个模块拖动层.modules,及#orderlist用于记录模块的排序值 

<script type="text/javascript" src="jquery.js"></script>  
<script type=&#39;text/javascript&#39; src=&#39;js/jquery-ui.min.js&#39;></script>
<div id="loader"></div>  
<div id="module_list">  
<input type="hidden" id="orderlist" value="<?php echo $sort; ?>" />  
   <!--?php 
                for ($i = 0; $i < $len; $i++) { 
                    ?-->  
   <div class="modules" title="<?php echo $sort_arr[$i]; ?>">  
    <h3 class="m_title">Module: 
     <!--?php echo $sort_arr[$i]; ?--></h3>  
    <p> 
     <!--?php echo $sort_arr[$i]; ?--></p>  
   </div>  
   <!--?php } ?-->  
   <div class="cl"></div>  
</div>

页面js:

$(function() { 
    $(".m_title").bind(&#39;mouseover&#39;, 
    function() { 
        $(this).css("cursor", "move") 
    }); 
 
    var $show = $("#loader"); //进度条 
    var $orderlist = $("#orderlist"); 
    var $list = $("#module_list"); 
 
    $list.sortable({ 
        opacity: 0.6, 
        revert: true, 
        cursor: &#39;move&#39;, 
        handle: &#39;.m_title&#39;, 
        update: function() { 
            var new_order = []; 
            $list.children(".modules").each(function() { 
                new_order.push(this.title); 
            }); 
            var newid = new_order.join(&#39;,&#39;); 
            var oldid = $orderlist.val(); 
            $.ajax({ 
                type: "post", 
                url: "update.php", 
                data: { 
                    id: newid, 
                    order: oldid 
                }, 
                //id:新的排列对应的ID,order:原排列顺序 
                beforeSend: function() { 
                    $show.html("<img src=&#39;images/load.gif&#39; /> 正在更新"); 
                }, 
                success: function(msg) { 
                    $show.html(""); 
                } 
            }); 
        } 
    }); 
});

拖动后保存到数据库,ajax.php中的代码:

$order = $_POST[&#39;order&#39;]; 
$itemid = trim($_POST[&#39;id&#39;]); 
if (!empty($itemid)) { 
    if ($order != $itemid) { 
        $query = mysql_query("update sortlist set sort=&#39;$itemid&#39; where id=1"); 
        if ($query) { 
            echo $itemid; 
        } else { 
            echo "none"; 
        } 
    } 
}

相关推荐:

PHP视频教程:https://www.php.cn/course/list/29/type/2.html

以上是关于PHP+jQuery-ui拖动浮动层排序并保存到数据库实例的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:cnblogs.com。如有侵权,请联系admin@php.cn删除