使用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 相关文章推荐
Javascript与flash交互通信基础教程
Aug 07 Javascript
js中的this关键字详解
Sep 25 Javascript
浅析JavaScript中的typeof运算符
Nov 30 Javascript
jQuery实现带分组数据的Table表头排序实例分析
Nov 24 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
May 31 Javascript
浅述节点的创建及常见功能的实现
Dec 15 Javascript
解决拦截器对ajax请求的拦截实例详解
Dec 21 Javascript
详解Angular2响应式表单
Jun 14 Javascript
浅谈Node.js爬虫之网页请求模块
Jan 11 Javascript
分享ES6的7个实用技巧
Jan 18 Javascript
AngularJS ui-router刷新子页面路由的方法
Jul 23 Javascript
vue.js使用v-model实现父子组件间的双向通信示例
Feb 05 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将XML转数组过程详解
2013/11/13 PHP
PHP中读取照片exif信息的方法
2014/08/20 PHP
摘自织梦CMS的HTTP文件下载类
2015/08/08 PHP
PHP 微信支付类 demo
2015/11/30 PHP
PHP实现git部署的方法教程
2017/12/19 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
PHP获取php,mysql,apche的版本信息及更多服务器信息
2021/03/09 PHP
兼容IE和Firefox的javascript获取iframe文档内容的函数
2011/08/15 Javascript
javascript中创建对象的几种方法总结
2013/11/01 Javascript
基于jquery插件实现常见的幻灯片效果
2013/11/01 Javascript
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
js实现选中复选框文字变色的方法
2015/08/14 Javascript
jquery操作select元素和option的实例代码
2016/02/03 Javascript
简洁实用的BootStrap jQuery手风琴插件
2016/08/31 Javascript
javascript实现获取指定精度的上传文件的大小简单实例
2016/10/25 Javascript
使用Ajax生成的Excel文件并下载的实例
2016/11/21 Javascript
基于js实现的限制文本框只可以输入数字
2016/12/05 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
2016/12/13 Javascript
javascript数组拍平方法总结
2018/01/20 Javascript
JS设计模式之命令模式概念与用法分析
2018/02/06 Javascript
vue-cli 目录结构详细讲解总结
2019/01/15 Javascript
JavaScript实现随机点名器实例详解
2019/05/07 Javascript
[01:42]TI4西雅图DOTA2前线报道 第一顿早饭哦
2014/07/08 DOTA
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
python的中异常处理机制
2018/08/30 Python
python Manager 之dict KeyError问题的解决
2019/12/21 Python
python七种方法判断字符串是否包含子串
2020/08/18 Python
python opencv pytesseract 验证码识别的实现
2020/08/28 Python
Django项目在pycharm新建的步骤方法
2021/03/02 Python
师范生自我鉴定范文
2013/10/05 职场文书
电脑专业个人求职信范文
2014/02/04 职场文书
我爱幼儿园演讲稿
2014/09/11 职场文书
售后客服个人自我评价
2014/09/14 职场文书
2015年社区关工委工作总结
2015/04/03 职场文书
2015小学师德工作总结
2015/07/21 职场文书
利用Python将list列表写入文件并读取的方法汇总
2022/03/25 Python