使用vue和datatables进行表格的服务器端分页实例代码


Posted in Javascript onJune 07, 2017

想法很简单,用vue生成表格的行,datatables生成分页信息,不想过程曲折,特此记录。

datatables端代码:

$('#dataTables-example').DataTable({ 
      responsive: true, 
      "serverSide" : true,  
      "ajax": function (data, callback, settings) { 
        postJson( 
            "/AccessControlSystem/user/selectByPrimary", 
            {'pageSize':data.length,'pageNo':data.start/data.length+1}, 
            function(result){ 
              callback({'draw':data.draw,'recordsTotal':userCount,'recordsFiltered':userCount,'data':[]}); 
              $("#userList").html(""); 
              getRoleForUser(result.data); 
              rendorUserList(result.data); 
               
            } 
          ); 
      } 
       
    });

vue端代码:

//用户列表 
var UserListComponent = Vue.extend({ 
  template:  
  `<tbody id="userList"> 
  <tr v-for="(user, index) in userList" v-bind:class="index%2==0?'odd':'even'"> 
    <td>{{user.name}}</td> 
    <td> 
      <label v-for="role in user.roleList" class="checkbox-inline"> 
      <input type="checkbox" v-bind:value="role.id" disabled v-model="role.checked">{{role.name}} 
      </label> 
    </td> 
    <td>{{user.createTime}}</td> 
    <td class="center"><button type="button" class="btn btn-primary btn-xs" v-on:click="editUser(user.id)">修改</button></td> 
    <td class="center"><button type="button" class="btn btn-primary btn-xs" v-on:click="deleteUser(user.id)">删除</button></td> 
  </tr> 
  </tbody>`, 
  data: function () { 
    return {'userList':[]}; 
  }, 
  methods: { 
    editUser:function(id){}, 
    deleteUser:function(id){} 
  } 
}); 
 
 
function rendorUserList(userList){ 
  var userListComponent = new UserListComponent(); 
  userListComponent.userList = userList; 
  userListComponent.$mount('#userList');  
}

重点在rendorUserList函数中,每次生成表格行不能复用已有的vue实例,需要先destroy,再重新生成vue实例,否则无法正常显示第1页后面的页。

不知为何,希望懂原理的高手告知。

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

Javascript 相关文章推荐
基础的prototype.js常用函数及其用法
Mar 10 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
Oct 23 Javascript
jQuery中:radio选择器用法实例
Jan 03 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
Mar 03 Javascript
jquery+CSS3模拟Path2.0动画菜单效果代码
Aug 31 Javascript
jQuery Validate插件实现表单验证
Aug 19 Javascript
AngularJS变量及过滤器Filter用法分析
Nov 22 Javascript
vue双向绑定简要分析
Mar 23 Javascript
vue中component组件的props使用详解
Sep 04 Javascript
详解CommonJS和ES6模块循环加载处理的区别
Dec 26 Javascript
微信小程序封装自定义弹窗的实现代码
May 08 Javascript
微信小程序上传图片到php服务器的方法
May 23 Javascript
Angular 4 指令快速入门教程
Jun 07 #Javascript
jstree单选功能的实现方法
Jun 07 #Javascript
JQueryMiniUI按照时间进行查询的实现方法
Jun 07 #jQuery
webpack打包单页面如何引用的js
Jun 07 #Javascript
vue使用Axios做ajax请求详解
Jun 07 #Javascript
Bootstrap fileinput文件上传组件使用详解
Jun 06 #Javascript
关于vue.js v-bind 的一些理解和思考
Jun 06 #Javascript
You might like
php数组中删除元素的实现代码
2012/06/22 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
PHP中session变量的销毁
2014/02/27 PHP
PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
2014/04/10 PHP
PHP数组相关函数汇总
2015/03/24 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
Javascript 不能释放内存.
2006/09/07 Javascript
取键盘键位ASCII码的网页
2007/07/30 Javascript
JS 面向对象的5钟写法
2009/07/31 Javascript
JQuery 确定css方框模型(盒模型Box Model)
2010/01/22 Javascript
jquery按回车提交数据的代码示例
2013/11/05 Javascript
影响jQuery使用的14个方面
2014/09/01 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
2015/05/06 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
TypeScript入门-基本数据类型
2017/03/28 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
JavaScript-定时器0~9抽奖系统详解(代码)
2017/08/16 Javascript
小程序自定义组件实现城市选择功能
2018/07/18 Javascript
解决vue字符串换行问题(绝对管用)
2020/08/06 Javascript
[01:39:04]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第二场 2月1日
2021/03/11 DOTA
python3抓取中文网页的方法
2015/07/28 Python
解读python logging模块的使用方法
2018/04/17 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
scikit-learn线性回归,多元回归,多项式回归的实现
2019/08/29 Python
开办大学饮食联盟创业计划书
2014/01/29 职场文书
五年级数学教学反思
2014/02/11 职场文书
设备动力科岗位职责范本
2014/02/23 职场文书
房产买卖委托公证书
2014/04/04 职场文书
我的梦中国梦演讲稿
2014/04/23 职场文书
学习演讲稿范文
2014/05/10 职场文书
中秋节活动总结
2014/08/29 职场文书
学校师德师风自我剖析材料
2014/09/29 职场文书
如何Python使用re模块实现okenizer
2022/04/30 Python
python blinker 信号库
2022/05/04 Python