html ajax分页,简单ajax 分页

article/2025/10/20 9:31:47

简单分页:

效果图:

bVbjhsB?w=596&h=390

思路:

数据渲染=》数据遍历(每页显示已规定好的条数).bindList()和执行分页渲染.initPaginator()

点击分页和下一页的时候,重新请求数据渲染,对应的数据重新遍历。

代码实现:

html:

分页测试

integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"/>

* {margin: 0;padding: 0;}

.list li{display: block;}

.list li img{display: block;width:100px;}

js:

var List = {

contentId: "listContent", //渲染列表id

pageId: "pagination", //渲染分页id

pageIndex: 1, //第几页开始渲染

pageSize: 6,//每页渲染多少条数据

pageSum:0,//共多少条数据

refreshId: null

};

//data.count为总的数据条数,即共多少条数据

List.loadList = function (pageIndex) {

var ajaxRequest = function () {

$.ajax({

url: "http://123.56.196.192:2000/syxa/news-consult/2/0/1000000",

type: "GET",

// data: data,

error: function () {

// console.log(error);

},

success: function (data) {

console.log(data);

console.log(data.data.length);

if (data.count == 0) {

console.log('当前没有数据记录');

}

else {

if(pageIndex == 1){

List.initPaginator(data.count, data.data);

$('#' + List.pageId).show();

$('.pagination li[data-page="1"]').addClass('active');

$('.pagination li.page-first').removeClass('active').addClass('disabled');

}

List.bindList(pageIndex,data.count,data.data);

}

}

});

}

ajaxRequest();

};

//数据遍历

List.bindList = function (pageIndex,count,data) {

var start = (pageIndex - 1) * List.pageSize; // 数据开始点

var content = '';

for (var index = start; index < pageIndex*List.pageSize && index < data.length; index++) { //遍历第几页内容,pageIndex也页面顺序

console.log(data[index]);

content += List.getListItem(data[index]);

}

$('#' + List.contentId).html('');

$('#' + List.contentId).append(content);

};

List.getListItem = function (item) {

var content = '';

content += '

';

content += ' ' + item.title + '';

content += '

' + item.title + '

';

content += '

';

return content;

};

//分页

List.initPaginator = function (count, data) {

var pageSize = List.pageSize;

var pageTotal = Math.ceil(count / pageSize);

var pageIndex = List.pageIndex;

List.pageSum = pageTotal;

console.log(pageTotal);

var html = "";

for (var i = pageIndex; i <= pageTotal; i++) {

html += '

' + i + '';

}

html = '

首页'

+ '

上一页'

+ html

+ '

下一页'

+ '

末页';

$('#' + List.pageId).find('ul').html(html);

};

//点击页码刷新跳数据

$('#' + List.pageId).on('click','li',function (e) {

var pageIndex=parseInt($(this).attr('data-page'));

var activeIndex=parseInt($('.pagination li.active').attr('data-page'));//当前active状态页码

$('.pagination li').removeClass('active');

if($(this).hasClass('page-prev')) {

List.loadList(activeIndex-1);

var cur=activeIndex-1;

$('.page-next,.page-last').removeClass('disabled');

$('.pagination li.page[data-page=' + cur + ']').addClass('active');

if(cur == 1){

$('.page-prev,.page-first').addClass('disabled');

$('.page-prev').attr('data-page','');

}else{

$('.page-prev').attr('data-page',activeIndex-2);

$('.page-next').attr('data-page',activeIndex);

}

}else if($(this).hasClass('page-next')){

List.loadList(activeIndex+1);

var cur=activeIndex+1;

$('.page-prev,.page-first').removeClass('disabled');

$('.pagination li.page[data-page=' + cur + ']').addClass('active');

if(cur == List.pageSum){

$('.page-next,.page-last').addClass('disabled');

$('.page-next').attr('data-page','');

}else{

$('.page-prev').attr('data-page',activeIndex);

$('.page-next').attr('data-page',activeIndex+2);

}

}else if((!$(this).hasClass('page-prev')) &&(!$(this).hasClass('page-next'))){

$(this).addClass('active');

List.loadList($(this).attr('data-page'));

}

if(!($(this).hasClass('page-first')) && !($(this).hasClass('page-prev'))&& !($(this).hasClass('page-last')) && !($(this).hasClass('page-next'))){

if(pageIndex == 1){

$('.page-prev,.page-first').addClass('disabled');

$('.page-next,.page-last').removeClass('disabled');

$('.page-next').attr('data-page','2');

}else if(pageIndex == List.pageSum){

$('.page-prev,.page-first').removeClass('disabled');

$('.page-next,.page-last').addClass('disabled');

$('.page-prev').attr('data-page',List.pageSum-1);

$('.page-next').attr('data-page','');

}else{

$('.page-prev,.page-first').removeClass('disabled');

$('.page-next,.page-last').removeClass('disabled');

$('.page-prev').attr('data-page',pageIndex-1);

$('.page-next').attr('data-page',pageIndex+1);

}

}

});

//页面初始化

$(function () {

List.loadList(List.pageIndex);

});


http://chatgpt.dhexx.cn/article/WFyCQ3Z5.shtml

相关文章

Ajax做分页

用这种ajax做分页的方法比较简单&#xff0c;把代码直接复制就可以&#xff0c;然后根据实际更改一下里面的参数。 1.设置分页显示显示的样式&#xff0c;显示效果如下。 <style type"text/css"> *{ margin:0px auto; padding:0px; font-family:"微软雅黑…

ajax实现分页操作

利用ajax请求数据的特点&#xff0c;来实现分页操作。 主要是利用ajax进行后端分页&#xff0c;当点击对应的页数&#xff0c;ajax请求数据库对应的数据&#xff0c;后端分页可以降低前端请求数据的压力&#xff0c;页面渲染起来比较流畅。 根据后台请求的数据&#xff0c;来创…

XUnit测试框架-Python unittest

选择 语言选择 本次个人作业我选择的语言是Python,了解学习Python有一段时间了但是一直没有练习&#xff0c;所以这次玩蛇&#xff0c;使用的版本是Python3.6。 开发工具选择 我选择的IDE是Pycharm,个人认为Pycharm是一款不错的Py开发工具&#xff0c;用起来得心应手&#xff0…

单元测试-xUnit

单元测试-xUnit Assert常用方法 名称描述Eqalexpected.result)断言结果与期望值相等。该方法的重载版本用于比较不同的类型和集合。该方法的另一种版本接受一个额外参数该对象实现了用于比较对象的IEqualityComparer接口NotEqual(expected,result)断言结果不等于期望值True(r…

xUnit安装及注意事项

前言 对于单元测试&#xff0c;想必大家都已再熟悉不过了&#xff0c;同时单元测试的重要性也越发突出&#xff0c;在招聘中也特别强调单元测试&#xff0c;但是对于微软内置的单元测试还是太过于繁琐&#xff0c;于是都在寻找一种简洁并且更加轻量的测试工具。用的最多的莫过于…

Xunit.net 单元测试学习——按顺序测试

最近一直在提高编码的质量&#xff0c;为了保证质量&#xff0c;必须有一套趁手的兵器&#xff0c;Xunit.Net 就是如此霸气的利器。 怎么编写单元测试 怎么会有如此低级的疑问呢&#xff1f;因为从接触单元测试&#xff0c;到使用上&#xff0c;真的不是一个简单的心路历程&am…

单元测试-xUnit总结

xUnit总结 什么是xUnit xUnit.net是针对.NET Framework的免费&#xff0c;开源&#xff0c;以社区为中心的单元测试工具。 自动化测试的优点 可以频繁的进行测试可以在任何时间进行测试&#xff0c;也可以按计划定时进行&#xff0c;例如&#xff1a;可以在半夜进行自动化测…

单元测试之 Xunit

&#xfeff;&#xfeff; 单元测试项目中引入 xunit.dll 1. 有类 Common&#xff0c;中有方法 Divide(int a, int b)&#xff0c;代码如下 public class Common {public int Divide(int a, int b){if (b 0)return 0;return a / b;} } 2. 在单元测试项目中为方法 Divide 写单元…

使用 xunit 编写测试代码

使用 xunit 编写测试代码 Intro xunit 是 .NET 里使用非常广泛的一个测试框架&#xff0c;有很多测试项目都是在使用 xunit 作为测试框架&#xff0c;不仅仅有很多开源项目在使用&#xff0c;很多微软的项目也在使用 xunit 来作为测试框架。 Get Started 在 xunit 中不需要标记…

C#_Unit Testing 一(xUnit)

一、前言 在VS中新建一个xunit的项目&#xff0c;该项目中已经自动安装了一些Nuget包&#xff0c;其中一个关键的就是xunit&#xff0c;https://xunit.net/。 同时&#xff0c;在同一个解决方案下我们也新建了一个类库&#xff0c;这个类库就是需要被测试的。这里提一点&…

在.NET开发中的单元测试工具之(2)——xUnit.Net

在上一篇《在.NET开发中的单元测试工具之(1)——NUnit》中讲述了如何使用NUnit在.NET开发中进行单元测试以及NUnit的一些缺点&#xff0c;今天将讲述如何使用xUnit.Net来进行单元测试。 xUnit.Net介绍 xUnit.net的创造者的创造者是Jim Newkirk和Brad Wilson从包括NUnit及其它单…

单元测试中Assert详解-xUnit

前一篇&#xff1a;详谈单元测试-xUnit 简介 Assert 是基于代码的返回值、对象的最终状态、事件是否发生等情况来评估测试的结果。Assert 的结果可能是 Pass 或者 Fail。如果所有的 Asserts 都通过了&#xff0c;那么整个测试就通过了。如果任何 Asserts 失败了&#xff0c;那…

xUnit-Moq框架

基于上一次的单元测试-xUnit进行 Models文件夹 Staff类修改为&#xff1a; public class Staff { public int Id { get; set; } public string Name { get; set; } public string State { get; set; } public int Age { get; set; } } 创建一个IRepository接口…

xUnit.net入门

xUnit.net是一个免费的、开源的、以社区为中心的.net框架单元测试工具。 本文在Win10Visual Studio2022-Preview下&#xff0c;创建一个简单的.Net Framework4.8的xUnit.net测试项目。 1、新建项目 打开VS2022&#xff0c;新建项目&#xff0c;弹出“创建新项目”窗口&#…

xUnit总结--学习笔记

xUnit.net是针对.NET Framework的免费&#xff0c;开源&#xff0c;以社区为中心的单元测试工具。 自动化测试的优点# 可以频繁的进行测试可以在任何时间进行测试&#xff0c;也可以按计划定时进行&#xff0c;例如&#xff1a;可以在半夜进行自动化测试比人工测试速度快可以更…

Xunit入门

本节记录Xunit单元测试的入门知识&#xff0c;以2.1版本作为入门示例。 1、新建一个类库项目 2、在Nuget中搜索xunit&#xff0c;这里我们只选xUnit.net和xunit.runner.visualstudio包。 其中xUnit是框架&#xff0c;而xunit.runner.visualstudio是vs插件包&#xff0c;让我们可…

3. 使用xUnit进行单元测试

实现.NET Core时&#xff0c;xUnit可用于创建单元测试&#xff0c;.NET Core团队使用了该产品。xUnit是一个开源实现方案&#xff0c;创建NUnit 2.0的开发人员创建了它。现在&#xff0c;.NET Core命令行界面支持MSTest和xUnit。 提示&#xff1a; xUnit的文档可参阅https://…

详谈单元测试-xUnit

简介 xUnit.net 是针对 .NET 的免费&#xff0c;开源单元测试框架&#xff0c;可并行测试、数据驱动测试。测试项目需引用被测试项目&#xff0c;从而对其进行测试&#xff0c;测试项目同时需要引用 xUnit。测试编写完成后&#xff0c;用 Test Runner 来测试项目&#xff0c;T…

01 如何利用xUnit框架对测试用例进行维护-xUnit简介及基本使用方法(基于Junit4)

1、xUnit是什么 先看Wikipedia上的解释 xUnit是一系列测试框架的统称&#xff0c;最开始来源于一个叫做Smalltalk的SUnit框架&#xff0c;现在各种面向对象的语言&#xff0c;如Java、Python的鼻祖就是Smalltalk&#xff0c;后来这些语言都借助了Sunit框架的理念&#xff0c;有…

【IoT】物联网NB-IoT之移动oneNET平台硬件接入

主要实现开发者实际的终端设备在 OneNET 平台上的创建、连接和数据交互。在完成用户注册和产品创建后&#xff0c;即可根据相关所创建产品的协议类型选择相应的硬件接入的开发。 接入流程可参见下图&#xff1a; 1、LWM2M 协议 - NB-IoT 测试接入流程分为平台域和设备域&…