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 克隆数组最简单的方法
Feb 12 Javascript
File文件控件,选中文件(图片,flash,视频)即立即预览显示
Apr 09 Javascript
浅谈Angularjs link和compile的使用区别
Oct 21 Javascript
JavaScript实现自定义媒体播放器方法介绍
Jan 03 Javascript
微信小程序实现图片预加载组件
Jan 18 Javascript
VUE多层路由嵌套实现代码
May 15 Javascript
Angular学习笔记之集成三方UI框架、控件的示例
Mar 23 Javascript
javascript canvas API内容整理
Feb 16 Javascript
JS apply用法总结和使用场景实例分析
Mar 14 Javascript
vue实现简单的登录弹出框
Oct 26 Javascript
介绍一下28个JS常用数组方法
May 06 Javascript
详解Anyscript开发指南绕过typescript类型检查
Sep 23 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
欧美媒体选出10年前最流行的17部动画
2017/01/18 日漫
一个比较不错的PHP日历类分享
2014/11/18 PHP
php实现学生管理系统
2020/03/21 PHP
用js重建星际争霸
2006/12/22 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
地址栏传递中文参数乱码在js里用escape转码
2013/08/28 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
2016/01/21 Javascript
jQuery插件HighCharts绘制2D圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
Vue.js手风琴菜单组件开发实例
2017/05/16 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
基于vue实现web端超大数据量表格的卡顿解决
2019/04/02 Javascript
解决Layui当中的导航条动态添加后渲染失败的问题
2019/09/25 Javascript
浅谈vue异步数据影响页面渲染
2019/10/29 Javascript
js实现带积分弹球小游戏
2020/07/21 Javascript
让Vue响应Map或Set的变化操作
2020/11/11 Javascript
python基础教程之元组操作使用详解
2014/03/25 Python
python使用arp欺骗伪造网关的方法
2015/04/24 Python
使用Python脚本将文字转换为图片的实例分享
2015/08/29 Python
深入浅析Python获取对象信息的函数type()、isinstance()、dir()
2018/09/17 Python
对pandas处理json数据的方法详解
2019/02/08 Python
python selenium执行所有测试用例并生成报告的方法
2019/02/13 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
2019/12/25 Python
Python实现新型冠状病毒传播模型及预测代码实例
2020/02/05 Python
使用遗传算法求二元函数的最小值
2020/02/11 Python
实现ECharts双Y轴左右刻度线一致的例子
2020/05/16 Python
Django Path转换器自定义及正则代码实例
2020/05/29 Python
Python如何生成xml文件
2020/06/04 Python
django有哪些好处和优点
2020/09/01 Python
HTML5的结构和语义(3):语义性的块级元素
2008/10/17 HTML / CSS
威尔逊皮革:Wilsons Leather
2018/12/07 全球购物
美国汽车零部件和配件网站:CarParts
2019/03/13 全球购物
介绍一下SQL Server的全文索引
2013/08/15 面试题
国外的一些J2EE面试题一
2012/10/13 面试题
房屋出售协议书
2014/04/10 职场文书
小学生安全教育主题班会
2015/08/12 职场文书