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 相关文章推荐
网页图片延时加载的js代码
Apr 22 Javascript
该如何加载google-analytics(或其他第三方)的JS
May 13 Javascript
jquery实现表格奇数偶数行不同样式(有图为证及实现代码)
Jan 23 Javascript
js日期时间补零的小例子
Mar 05 Javascript
jQuery下实现等待指定元素加载完毕(可改成纯js版)
Jul 11 Javascript
jquerymobile局部渲染的各种刷新方法小结
Mar 05 Javascript
jQuery对象的selector属性用法实例
Dec 27 Javascript
Bootstrap学习笔记之css样式设计(2)
Jun 07 Javascript
利用bootstrapValidator验证UEditor
Sep 14 Javascript
利用JQuery阻止事件冒泡
Dec 01 Javascript
jQuery解析返回的xml和json方法详解
Jan 05 Javascript
js常见遍历操作小结
Jun 06 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聊天室技术
2006/10/09 PHP
PHP中的正规表达式(二)
2006/10/09 PHP
PHP删除特定数组内容并且重建数组索引的方法.
2011/03/25 PHP
php文件夹与文件目录操作函数介绍
2013/09/09 PHP
ThinkPHP模板Switch标签用法示例
2014/06/30 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
jQuery弹出层插件简化版代码下载
2008/10/16 Javascript
如何编写高质量JS代码(续)
2015/02/25 Javascript
javascript中判断json的方法总结
2015/08/27 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
jQuery div拖拽用法实例
2016/01/14 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
2016/08/05 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
基于vue-router 多级路由redirect 重定向的问题
2018/09/03 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
vue-dplayer 视频播放器实例代码
2019/11/08 Javascript
详解Python使用simplejson模块解析JSON的方法
2016/03/24 Python
Python基础篇之初识Python必看攻略
2016/06/23 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
2017/12/20 Python
Python实现的rsa加密算法详解
2018/01/24 Python
一个简单的python爬虫程序 爬取豆瓣热度Top100以内的电影信息
2018/04/17 Python
python多线程之事件Event的使用详解
2018/04/27 Python
Python匿名函数及应用示例
2019/04/09 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
python中rc1什么意思
2020/06/19 Python
关于HTML5的22个初级技巧(图文教程)
2012/06/21 HTML / CSS
将SVG图引入到HTML页面的实现
2019/09/20 HTML / CSS
Aurora London官网:奢华、负担得起的皮革手袋
2020/08/01 全球购物
汽车维修专业个人求职信范文
2014/01/01 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
2014年租房协议书范本
2014/10/30 职场文书
2016年春季运动会广播稿
2015/08/19 职场文书
党员干部学习心得体会
2016/01/23 职场文书
女人创业励志语录,句句蕴含能量,激发你的潜能
2019/08/20 职场文书