Vue.js实现分页查询功能


Posted in Javascript onNovember 15, 2020

本文实例为大家分享了Vue.js实现分页查询的具体代码,供大家参考,具体内容如下

vue.js的使用如下:

1、引入vue.js

<script src="~/js/vue2.2.4.js"></script>

   a、分页条

<ul class="pagination" id="pagination1"></ul>

    b、分页条js、css

<link href="~/css/page.css" rel="stylesheet" />
<script src="~/js/jqPaginator.js"></script>

2、分页的方法

public JsonResult GrtUserData(int page,int rows)
 {
 //top分页法 row_number分页
 TextEntities tes = new TextEntities();
 //分页查询
 List<Users> ulist = tes.Users.OrderBy(a=>a.Id).Skip((page-1)*rows).Take(rows).ToList();
 int allcount = tes.Users.Count(); //总页数
 int allpage = allcount / rows;
 if (allcount % rows !=0)
 
 allpage = allpage + 1;
 DTO_Page dp = new DTO_Page();
 dp.data = ulist;
 dp.allpage = allpage;
 return Json(dp, JsonRequestBehavior.AllowGet);
 }

3、封装page方法

public class DTO_Page
 {
 public int rows { get; set; }
 public int allpage { get; set; }
 public List<Users> data { get; set; }
 }

4、定义获取总页数的方法

public JsonResult GetAllpage(int rows)
 {
 TextEntities tes = new TextEntities();
 int allcount = tes.Users.Count(); //总页数
 int allpage = allcount / rows;
 if (allcount % rows != 0)
 allpage = allpage + 1;
 return Json(allpage);
 
 }

5、前台分页方法,获取后台的数据,实现分页的动态性

<script>
 //封装一个查询后台的方法
 var getdata = function (page, rows,vm) {
 $.ajax({
 url: '/home/GrtUserData',
 type: 'get',
 data: { page: page, rows: rows },
 success: function (dto_page) {
 vm.mydata = dto_page.data;
 $.jqPaginator('#pagination1', {
 totalPages: dto_page.allpage,
 visiblePages: 5,
 currentPage: page,
 onPageChange: function (num, type) {
 //怎么把第一次忽略
 if (type != "init") {
 //更新查询后的页面
 getdata(num, 5,vm);
 }
 }
 });
 }
 });
 }

 $(function () {
 //给更新div添加数据
 var update_vm = new Vue({
 el: "#updatecontent",
 data: {
 userinfo: {}
 }
 })
 
 //实例化 vue.js (用来给表格提供数据的) 只实例化一次
 var vm = new Vue({
 el: '#content',
 data: {
 mydata: []
 },
 methods: {
 butdelete: function (_id) //删除
 {
 $.post('/home/BatchDelete', { ids: _id }, function (result) {
 if (result > 0) {
 location.href = "/home/UserMan";
 }
 else {
 alert("删除失败");
 }
 });
 },
 butupdate: function (item, event) //更新
 {
 //使用jquery打开编辑状态
 //$(event.target).parent().parent().find("td:gt(0):lt(4)").each(function (index,item) {
 // $(item).html("<input type='text' style='width:50px' value=" + $(item).html() + ">");
 //});

 //复制对象
 // var databack = $.extend({},item);
 update_vm.$data.userinfo = item;
 layer.open({
 type: 1,
 area: ["300px", "230px"],
 title: "更新",
 content: $("#updatecontent"),
 btn: ["保存"],
 yes: function (index) {
 $.post('/home/Update', update_vm.$data.userinfo, function (result) {
 //可以把vue.js数据替换把更新后到页面
 // vm.$data.mydata.splice(1, 1, update_vm.$data.userinfo);
 });
 },
 cancel: function () //点击关闭按钮
 {
 // alert(databack.UserName);
 // console.log(databack);
 }
 });
 }
 }
 }); 

 //默认第一个请求
 getdata(2,5,vm);
 $("#deletebut").click(function () {
 //存放需要批量删除的id
 var ids = "";
 $(".mytable input[type='checkbox']:checked").each(function (index, item) {
 ids += $(item).val() + ",";
 });
 $.post('/home/BatchDelete', { ids: ids }, function (result) {
 if (result > 0) {
 location.href = "/home/UserMan";
 }
 else {
 alert("删除失败");
 }
 });
 });
 });
</script>

关于vue.js的学习教程,请大家点击专题vue.js组件学习教程、Vue.js前端组件学习教程进行学习。

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

Javascript 相关文章推荐
javascript实现的DES加密示例
Oct 30 Javascript
jQuery获取当前对象标签名称的方法
Feb 07 Javascript
JavaScript实现的图像模糊算法代码分享
Apr 22 Javascript
js键盘事件的keyCode
Jul 29 Javascript
cocos2dx骨骼动画Armature源码剖析(一)
Sep 08 Javascript
jQuery图片渐变特效的简单实现
Jun 25 Javascript
Bootstrap多级菜单的实现代码
May 23 Javascript
angularjs $http实现form表单提交示例
Jun 09 Javascript
详解vue.js之绑定class和style的示例代码
Aug 24 Javascript
JS路由跳转的简单实现代码
Sep 21 Javascript
vue interceptor 使用教程实例详解
Sep 13 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
JS实现网页抢购功能(触发,终止脚本)
Nov 27 #Javascript
JS基于贪心算法解决背包问题示例
Nov 27 #Javascript
基于vue.js的分页插件详解
Nov 27 #Javascript
webpack构建换肤功能的思路详解
Nov 27 #Javascript
vue实现商城上货组件简易版
Nov 27 #Javascript
修改UA在PC中访问只能在微信中打开的链接方法
Nov 27 #Javascript
Vue的移动端多图上传插件vue-easy-uploader的示例代码
Nov 27 #Javascript
You might like
PHP中在数据库中保存Checkbox数据(2)
2006/10/09 PHP
php minixml详解
2008/07/19 PHP
详解PHP中mb_strpos的使用
2018/02/04 PHP
js jquery分别实现动态的文件上传操作按钮的添加和删除
2014/01/13 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
jQuery鼠标移动图片上实现放大效果
2017/06/25 jQuery
基于jquery的on和click的区别详解
2018/01/15 jQuery
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
JS使用Dijkstra算法求解最短路径
2019/01/17 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
vue使用自定义指令实现拖拽
2021/01/29 Javascript
uni-app使用微信小程序云函数的步骤示例
2020/05/22 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
Django中的CACHE_BACKEND参数和站点级Cache设置
2015/07/23 Python
Python实现的异步代理爬虫及代理池
2017/03/17 Python
基于Python闭包及其作用域详解
2017/08/28 Python
Python实现发送与接收邮件的方法详解
2018/03/28 Python
python 矩阵增加一行或一列的实例
2018/04/04 Python
django框架之cookie/session的使用示例(小结)
2018/10/15 Python
Python自动化运维之Ansible定义主机与组规则操作详解
2019/06/13 Python
Python使用itchat模块实现群聊转发,自动回复功能示例
2019/08/26 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
Python中内建模块collections如何使用
2020/05/27 Python
Python装饰器如何实现修复过程解析
2020/09/05 Python
python判断变量是否为列表的方法
2020/09/17 Python
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
机电一体化专业应届本科生求职信
2013/09/27 职场文书
大学生优秀团员事迹材料
2014/01/30 职场文书
请假条格式范文
2014/04/10 职场文书
王力宏牛津大学演讲稿
2014/05/22 职场文书
酒店端午节活动方案
2014/08/26 职场文书
反腐倡廉剖析材料
2014/09/30 职场文书
采购员岗位职责范本
2015/04/07 职场文书
青年联谊会致辞
2015/07/31 职场文书