通过jquery-ui中的sortable来实现拖拽排序

简介:

1.引入文件

<script src="{sh::PUB}js/jquery-1.10.1.min.js"></script>
<link rel="stylesheet" href="Public/css/jquery-ui.min.css">
<script src="{sh::PUB}js/jquery-ui.min.js"></script>

2.给元素附上sortable类

<tbody class="sortable">
   <tr></tr>
   <tr></tr> 
</tbody>

3.开启并配置

$(function() {
    $(".sortable").sortable({
        cursor: "move",
        items: "tr", //只是tr可以拖动
        opacity: 0.6, //拖动时,透明度为0.6
        revert: true, //释放时,增加动画
        update: function(event, ui) { //更新排序之后
            var categoryids = $(this).sortable("toArray");
            var $this = $(this);
            $.ajax({
                url: '{sh::U("AgentGoods/ajax","todo=categoryDragsort")}',
                type: 'POST',
                data: 'categoryids=' + categoryids,
                success: function(json) {
                    if (json == 1) {
                        layer.msg('移动成功', {
                            icon: 1
                        });
                    } else {
                        $this.sortable("cancel");
                        layer.msg('移动失败', {
                            icon: 2
                        });
                    }
                }
            });
        }
    });
    $(".sortable").disableSelection();
});

4.后台处理

$categoryids    = $this->_post('categoryids');
$categoryidsArr = explode(",",$categoryids);
foreach ($categoryidsArr as $k => $v) {
    $data['sort'] = count($categoryidsArr) - $k;
    $data['id']   = $v;
    M('Agentgoods_category')->where(array('id'=>$v))->save($data);
}
exit('1');

小结:这种排序,不是交换,而是彻底的整体调整


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5392035.html,如需转载请自行联系原作者

相关文章
|
网络性能优化 网络协议 网络虚拟化
|
Web App开发 移动开发 JavaScript
一篇文带你使用js实现拖拽排序
一篇文带你使用js实现拖拽排序
|
存储 Java
BBTools-bbduk安装使用
BBTools-bbduk安装使用
819 0
|
Web App开发 存储 关系型数据库
【教程】将自己的APP部署到阿里云
如何将APP部署在阿里云服务器上 如果将APP部署在阿里云服务器,可能会有一些操作需要我们来完成,下面的介绍里的说明大家可以参考下。 如何将APP部署在阿里云服务器上 随着移动通信设备终端的逐步流行,移动互联网在互联网交流中起着越来越大的作用,而移动互联网采用纯网站应用的部分相当之少,曲而代之的APP应用软件正以雨后春笋般的速度生发出来,例如说苹果IOS市场里的很多APP、谷歌安卓尔市场里的APP等。
10193 0
|
消息中间件 运维 负载均衡
基于 RocketMQ 的 Dubbo-go 通信新范式
RocketMQ 新功能尝鲜!让 Dubbo-go 通过 RocketMQ 进行 RPC 通信来扩展 Dubbo-go 的通信方式,利用 Dubbo-go 丰富的服务治理能力和 RocketMQ 稳定的 RPC 通信能力,两者强强联合,打造 RPC 通信新范式。
388 0
基于 RocketMQ 的 Dubbo-go 通信新范式
|
数据库 存储 Cloud Native
深度 | 为你解读 SOFA-DTX 分布式事务的设计演进路线上篇
我们将分为两篇来详细与大家解读,本篇为上篇。主要讲解 SOFA-DTX 如何满足支付业务的核心需求,保障分布式环境下交易一致性,并且在此之上的严苛的工程优化。
1446 0
|
Web App开发 算法 测试技术
|
2天前
|
数据采集 人工智能 安全
|
11天前
|
云安全 监控 安全