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 相关文章推荐
jQuery EasyUI API 中文文档 - Form表单
Oct 06 Javascript
JavaScript中的eval()函数详解
Aug 22 Javascript
浅析jquery的作用与优势
Dec 02 Javascript
jquery 中的each()跳出循环的语句
May 23 Javascript
jquery实现勾选复选框触发事件给input赋值
Feb 01 Javascript
angularjs学习笔记之简单介绍
Sep 26 Javascript
微信小程序模拟cookie的实现
Jun 20 Javascript
微信小程序开发的基本流程步骤
Jan 31 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
Jun 04 Javascript
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
May 26 Javascript
vue打包npm run build时候界面报错的解决
Aug 13 Javascript
Antd表格滚动 宽度自适应 不换行的实例
Oct 27 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图片加中文水印实现代码分享
2012/10/31 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
JavaScript的面向对象方法以及差别
2008/03/31 Javascript
自己使用jquery写的一个无缝滚动的插件
2014/04/30 Javascript
JavaScript实现标题栏文字轮播效果代码
2015/10/24 Javascript
JavaScript模拟数组合并concat
2016/03/06 Javascript
javascript 内置对象及常见API详细介绍
2016/11/01 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
JavaScript简单计算人的年龄示例
2017/04/15 Javascript
vue 如何添加全局函数或全局变量以及单页面的title设置总结
2017/06/01 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
egg.js的基本使用和调用数据库的方法示例
2019/05/18 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)
2019/09/01 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
2019/09/06 Javascript
使用Taro实现小程序商城的购物车功能模块的实例代码
2020/06/05 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
2020/11/06 Javascript
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
python 编码规范整理
2018/05/05 Python
Python中字符串List按照长度排序
2019/07/01 Python
python hough变换检测直线的实现方法
2019/07/12 Python
Python Subprocess模块原理及实例
2019/08/26 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
使用CSS3制作一个简单的Chrome模拟器
2015/07/15 HTML / CSS
HTML5利用约束验证API来检查表单的输入数据的代码实例
2016/12/20 HTML / CSS
巴西家用小家电购物网站:Polishop
2016/08/07 全球购物
英国最好的温室之家:Greenhouses Direct
2019/07/13 全球购物
《威尼斯的小艇》教学反思
2014/02/17 职场文书
上课迟到检讨书
2014/02/19 职场文书
岗位安全生产责任书
2014/07/28 职场文书
购房协议书范本(无房产证)
2014/10/07 职场文书
教育项目合作协议书格式
2014/10/17 职场文书
2015年师德表现自我评价
2015/03/05 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
身份证丢失证明
2015/06/19 职场文书