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 相关文章推荐
一个无限级XML绑定跨框架菜单(For IE)
Jan 27 Javascript
Javascript学习笔记-详解in运算符
Sep 13 Javascript
jQuery中append()方法用法实例
Dec 25 Javascript
自学实现angularjs依赖注入
Dec 20 Javascript
如何提高javascript加载速度
Dec 26 Javascript
在Vue项目中取消ESLint代码检测的步骤讲解
Jan 27 Javascript
Node.js 多线程完全指南总结
Mar 27 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
May 14 jQuery
jqGrid表格底部汇总、合计行footerrow处理
Aug 21 Javascript
vue不操作dom实现图片轮播的示例代码
Dec 18 Javascript
解决React在安装antd之后出现的Can't resolve './locale'问题(推荐)
May 03 Javascript
基于脚手架创建Vue项目实现步骤详解
Aug 03 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 MySQL与分页效率
2008/06/04 PHP
Php Image Resize图片大小调整的函数代码
2011/01/17 PHP
php错误级别的设置方法
2013/06/17 PHP
教你如何快捷的使用cmd访问mysql小技巧
2014/05/26 PHP
Yii框架弹出框功能示例
2017/01/07 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
JavaScript URL参数读取改进版
2009/01/16 Javascript
javascript 日历提醒系统( 兼容所有浏览器 )
2009/04/07 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
js匿名函数作为函数参数详解
2016/06/01 Javascript
JS模仿腾讯图片站的图片翻页按钮效果完整实例
2016/06/21 Javascript
浅谈js中test()函数在正则中的使用
2016/08/19 Javascript
原生js实现可拖拽效果
2017/02/28 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
2019/08/20 Javascript
javascript实现页面的实时时钟显示示例
2020/08/06 Javascript
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python中的Descriptor描述符学习教程
2016/06/02 Python
python使用pygame框架实现推箱子游戏
2018/11/20 Python
漂亮的Django Markdown富文本app插件的实现
2019/01/02 Python
基于python实现数组格式参数加密计算
2020/04/21 Python
keras 多任务多loss实例
2020/06/22 Python
pytorch 查看cuda 版本方式
2020/06/23 Python
CSS3之2D与3D变换的实现方法
2019/01/28 HTML / CSS
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
html5关于外链嵌入页面通信问题(postMessage解决跨域通信)
2020/07/20 HTML / CSS
购买正版游戏和游戏激活码:Green Man Gaming
2019/11/06 全球购物
5个HTML5的常用本地存储方式详解与介绍
2021/03/27 HTML / CSS
主管会计岗位责任制
2014/02/10 职场文书
党性锻炼的心得体会
2014/09/03 职场文书
2014年小学教师工作自我评价
2014/09/22 职场文书
世界文化遗产导游词
2015/02/13 职场文书
复试通知单模板
2015/04/24 职场文书
欠条样本
2015/07/03 职场文书
详解MySQL的半同步
2021/04/22 MySQL
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers