BootStrap table实现表格行拖拽效果


Posted in Javascript onDecember 01, 2018

本文实例为大家分享了BootStrap table实现表格行拖拽的具体代码,供大家参考,具体内容如下

不上图了

首先还是得添加三个文件,自己上网搜搜就行

<script src="~/Content/bootstrap-table/jquery.tablednd.js"></script>
<script src="~/Content/bootstrap-table/bootstrap-table-reorder-rows.js"></script>
<link href="~/Content/bootstrap-table/bootstrap-table-reorder-rows.css" rel="stylesheet"/>

前台,加在Bootstrap Table 属性里面  

//当选中行,拖拽时的哪行数据,并且可以获取这行数据的上一行数据和下一行数据
   onReorderRowsDrag: function(table, row) {
    //取索引号
    dragbeforeidx = $(row).attr("data-index");
   },
   //拖拽完成后的这条数据,并且可以获取这行数据的上一行数据和下一行数据
   onReorderRowsDrop: function (table, row) {
    //取索引号
    draglateridx = $(row).attr("data-index");
   },
   //当拖拽结束后,整个表格的数据
   onReorderRow: function (newData) {
    //这里的newData是整个表格数据,数组形式
    if (dragbeforeidx != draglateridx) {//这是我其他地方需要的,你们可不必要这个
     //console.log(newData); 调试用代码
     $.post("Sort",
      { jsondata: JSON.stringify(newData) },//将整张表数据Post,当然,先序列化成Json
      function(data) {
       if (data == "success") {
        $table.bootstrapTable('refresh');
       }
      });
    }
   }

后台代码Controller

public string Sort(string jsondata)
  {
   //将json序列化为List<T>
   JavaScriptSerializer serializer = new JavaScriptSerializer();
   List<WorkFlow> list = serializer.Deserialize<List<WorkFlow>>(jsondata);
   BLL.Base.WorkFlow bllworkflow = new BLL.Base.WorkFlow();
   var result = bllworkflow.Sort(list);
   return result;
  }

排序的思路:当前台拖动完成后,将整个表格数据传入后台,先删除之前数据库中的数据,重新保存当前数据实现排序。

缺点:  如果你有分页显示,返回的Table数据只为第一页的。第二页就会出现排序问题。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
学习ExtJS accordion布局
Oct 08 Javascript
javascript中String类的subString()方法和slice()方法
May 24 Javascript
js+html+css实现鼠标移动div实例
Jan 30 Javascript
jquery中$(#form :input)与$(#form input)的区别
Aug 18 Javascript
jQuery焦点图轮播插件KinSlideshow用法分析
Jun 08 Javascript
利用JQUERY实现多个AJAX请求等待的实例
Dec 14 jQuery
webpack+vuex+axios 跨域请求数据的示例代码
Mar 06 Javascript
详解Vue前端对axios的封装和使用
Apr 01 Javascript
vue使用vuex实现首页导航切换不同路由的方法
May 08 Javascript
微信小程序云开发 生成带参小程序码流程
May 18 Javascript
JavaScript实现单英文金山打字通
Jul 24 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
Apr 11 Javascript
一次Webpack配置文件的分离实战记录
Nov 30 #Javascript
基于Vue组件化的日期联动选择器功能的实现代码
Nov 30 #Javascript
vue拖拽排序插件vuedraggable使用方法详解
Aug 21 #Javascript
JS实现图片拖拽交换效果
Nov 30 #Javascript
Vue+Webpack完美整合富文本编辑器TinyMce的方法
Nov 30 #Javascript
jQuery实现网页拼图游戏
Apr 22 #jQuery
vue 双向数据绑定的实现学习之监听器的实现方法
Nov 30 #Javascript
You might like
PHP 正则表达式小结
2015/02/12 PHP
PHP模块化安装教程
2016/06/01 PHP
详谈php静态方法及普通方法的区别
2016/10/04 PHP
php array_values 返回数组的值实例详解
2016/11/17 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
php如何比较两个浮点数是否相等详解
2019/02/12 PHP
php7 参数、整形及字符串处理机制修改实例分析
2020/05/25 PHP
来自chinaz的ajax获取评论代码
2008/05/03 Javascript
JavaScript URL参数读取改进版
2009/01/16 Javascript
学习ExtJS Column布局
2009/10/08 Javascript
利用进制转换压缩数字函数分享
2014/01/02 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
使用jQuery.wechat构建微信WEB应用
2014/10/09 Javascript
js判断浏览器版本以及浏览器内核的方法
2015/01/20 Javascript
jQuery内部原理和实现方式浅析
2015/02/03 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
老生常谈onBlur事件与onfocus事件(js)
2016/07/09 Javascript
获取今天,昨天,本周,上周,本月,上月时间(实例分享)
2017/01/04 Javascript
判断颜色是否合法的正则表达式(详解)
2017/05/03 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
2017/12/28 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
如何利用vue实现波谱拟合详解
2020/11/05 Javascript
python将xml xsl文件生成html文件存储示例讲解
2013/12/03 Python
Python描述器descriptor详解
2015/02/03 Python
python中日期和时间格式化输出的方法小结
2015/03/19 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
Python实现某论坛自动签到功能
2019/08/20 Python
python序列化与数据持久化实例详解
2019/12/20 Python
关于 HTML5 的七个传说小结
2012/04/12 HTML / CSS
自我评价的正确写法
2013/09/19 职场文书
公安机关纪律作风整顿剖析
2014/10/10 职场文书
大学生学期个人总结
2015/02/12 职场文书
索赔员岗位职责
2015/02/15 职场文书
惹女朋友生气检讨书
2015/05/06 职场文书