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 相关文章推荐
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
Sep 22 Javascript
javascript中attribute和property的区别详解
Jun 05 Javascript
jQuery通过扩展实现抖动效果的方法
Mar 11 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
Jul 22 Javascript
浅谈js中的三种继承方式及其优缺点
Aug 10 Javascript
常用jQuery选择器汇总
Feb 02 Javascript
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 jQuery
浅谈javascript中的prototype和__proto__的理解
Apr 07 Javascript
vue集成kindeditor富文本的实现示例代码
Jun 07 Javascript
JavaScript迭代器的含义及用法
Jun 21 Javascript
JavaScript this使用方法图解
Feb 04 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
May 16 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将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
PHP调试函数和日志记录函数分享
2015/01/31 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
jQuery中事件对象e的事件冒泡用法示例介绍
2014/04/25 Javascript
JS判断客服QQ号在线还是离线状态的方法
2015/01/13 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
Jquery 效果使用详解
2015/11/23 Javascript
jQuery Chart图表制作组件Highcharts用法详解
2016/06/01 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
2017/02/13 Javascript
微信小程序 基础组件与导航组件详细介绍
2017/02/21 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
js实现图片上传即时显示效果
2019/09/30 Javascript
[36:02]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第一局
2016/02/28 DOTA
python使用pil生成缩略图的方法
2015/03/26 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
python 画三维图像 曲面图和散点图的示例
2018/12/29 Python
超简单使用Python换脸实例
2019/03/27 Python
Pandas 缺失数据处理的实现
2019/11/04 Python
python 浅谈serial与stm32通信的编码问题
2019/12/18 Python
django 文件上传功能的相关实例代码(简单易懂)
2020/01/22 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
Python操作word文档插入图片和表格的实例演示
2020/10/25 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
大专学生推荐信范文
2013/11/19 职场文书
行政总经理岗位职责
2013/12/05 职场文书
高中英语教学反思
2014/02/04 职场文书
员工团队活动方案
2014/08/28 职场文书
2014年采购工作总结
2014/11/20 职场文书
导游词怎么写
2015/02/04 职场文书
售后服务质量承诺书
2015/04/29 职场文书
防溺水主题班会教案
2015/08/12 职场文书
python 如何用map()函数创建多线程任务
2021/04/07 Python
Python函数对象与闭包函数
2022/04/13 Python