使用JavaScript创建我的分页
把下面的方法放到一个js文件,页面引用他就行了
JavaScript
function PageList(PageSize, PageIndex, TotalCount, ParList) {
$("#Page").html();
var PageSize = parseInt(PageSize);
var PageIndex = parseInt(PageIndex);
var TotalCount = parseInt(TotalCount);
if (TotalCount > 0) {
var top = 0;
var end = 0;
var d = TotalCount / PageSize;
var count = Math.ceil(d);
top = PageIndex - 4;
if (top <= 0) {
top = 1;
}
end = top + 6;
if (end > count) {
end = count;
}
var strUrl = "";
if (parseInt(PageIndex - 1) == 0) {
strUrl += "<li><a class='w55 cur' id='top' style='cursor:default' onclick='' href='javascript:;'><</a></li>";
} else {
strUrl += "<li><a class='w55 cur' id='top' style='cursor:default' onclick='" + ParList + "(" + parseInt(PageIndex - 1) + ")' href='javascript:;'><</a></li>";
}
for (var i = top; i <= end; i++) {
if (i == PageIndex) {
strUrl += "<li class='active'><a href='JavaScript:Void(0)'" + ">" + i + "</a></li>";
}
else {
strUrl += "<li><a href='JavaScript:Void(0)' style='cursor:pointer;' onclick='" + ParList + "(" + i + ")'>" + i + "</a></li>";
}
}
strUrl += "<li><a class='w55 cur' id='end' style='cursor:default' onclick='' href='javascript:;'>></a></li>";
strUrl += "<li><a>共" + TotalCount + "条记录</a></li>";
$("#Page").html(strUrl);
if (PageIndex != 1) {
$("#top").attr("class", "w55")
$("#top").attr("style", "")
}
if (PageIndex != end) {
$("#end").attr("class", "w55")
$("#end").attr("style", "")
$("#end").attr("onclick", "" + ParList + "(" + parseInt(parseInt(PageIndex) + parseInt(1)) + ")");
}
} else {
$("#Page").html("");
}
}
PageSize 每页显示多少条
PageIndex 当前的页码
TotalCount 一共有多少条记录
ParList 分页方法
C# MVC中调用这个js方法
PageList("@Model.PageSize", "@Model.PageIndex", "@Model.TotalCount", "ParList")
Ajax
这个ajax方法的名字就是,第四个参数
function ParList(data) {
$("#Wu").remove();
$.ajax({
url: "/ActivityAndProduct/ActivityList?PageIndex=" + data,
type: "post",
data: {
Name: $("#Name").val(),
type: $("#static option:selected").val()
},
success: function (data) {
$("#divList").html(data);
}
});
}
HTML(主视图)
<table class="table table-hover table-bordered" style="margin-top: 20px;">
<tbody id="divList"> </tbody>
</table>
<div style="margin-top: 10px;">
<div style="text-align: center;">
<nav>
<ul class="pagination" id="Page"> </ul>
</nav>
</div>
</div>
(部分视图)
@if (Model.Count > 0)
{
<tr>
<th>活动和产品ID</th>
<th>活动和产品名称</th>
<th>创建时间</th>
<th>最后编辑时间</th>
<th>状态</th>
<th>操作</th>
</tr>
foreach (var item in Model.Model)
{
<tr>
<td>@item.ID</td>
<td>@item.Name</td>
<td>@item.CreateTime</td>
<td>@item.EditTime</td>
<td id="@item.ID">
@if (item.Static == 0)
{
<ii>下架</ii>
}
@if (item.Static == 1)
{
<ii>上架</ii>
}
</td>
<td>
<a>编辑</a>
<a>删除</a>
</td>
</tr>
}
<script src="~/Scripts/Page.js"></script>
<script type="text/javascript">
$(function () {
PageList("@Model.PageSize", "@Model.PageIndex", "@Model.TotalCount", "ParList")
})
</script>
}
通过Ajax调用后台的方法
后台的方法会返回部分视图
再通过js把返回回来的部分视图替换了
这个分页的方法中
搜索和分页可以都用这个方法
调用第一页就行了
ParList(1);
使用JavaScript创建我的分页的更多相关文章
- 用html5的canvas和JavaScript创建一个绘图程序
本文将引导你使用canvas和JavaScript创建一个简单的绘图程序. 创建canvas元素 首先准备容器Canvas元素,接下来所有的事情都会在JavaScript里面. <canvas ...
- 使用 Canvas 和 JavaScript 创建逼真的下雨效果
HTML5 规范引进了很多新特性,其中最令人期待的之一就是 Canvas 元素,HTML5 Canvas 提供了通过 JavaScript 绘制图形的方法,非常强大.这里向大家展示一个使用 Canva ...
- javascript创建类的6种方式
javascript创建类的7种方式 一 使用字面量创建 1.1 示例 var obj={}; 1.2 使用场景 比较适用于临时构建一个对象,且不关注该对象的类型,只用于临时封装一次数据,且不适合代码 ...
- Javascript创建类和对象
现总结一下Javascript创建类和对象的几种方法: 1.原始的创建方法: <script type="text/javascript"> var person = ...
- JavaScript 创建一个 form 表单并提交
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
- javascript创建css、js,onload触发callback兼容主流浏览器的实现
http://www.fantxi.com/blog/archives/load-css-js-callback/ 由于需要写个函数,既可以加载css,又可以加载js,所以对各主流浏览器对加载js.c ...
- Scrollanim – CSS3 & JavaScript 创建滚动动画
Scrollanim 是结合 CSS3 和 JavaScript 来创建令人惊叹的滚动动画的开源库. Scrolanim 支持在页面上的所有可用的元素的位置.有很多的自定义参数可以配置使用,构建出精彩 ...
- javascript创建节点的事件绑定
javascript创建节点的事件绑定 timeupdate事件是<video>中用来返回视频播放进度的事件,绑定在<video>标签返回视频播放位置(每秒计). 现video ...
- JavaScript 创建动态表格
JavaScript 创建动态表格 版权声明:未经授权,严禁转载! 案例代码 <div id="data"></div> <script> va ...
随机推荐
- 向数据库中添加内容 manageStdInfo.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="manageStdInfo.as ...
- [LintCode] Trapping Rain Water
Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...
- ZOJ2587 Unique Attack(判定最小割唯一性)
看了题解,自己大概想了下. 最小割唯一的充分必要条件是残量网络中所有点要嘛能从源点floodfill到要嘛能floodfill到汇点. 必要性,这是当然的,因为假设从源点floodfill或者从汇点反 ...
- 在python包管理中使用easy_install软件的步骤
本文主要介绍的是让python包管理变得更加容易的实际应用方法,就是运用easy_install这一软件,下面是文章的具体介绍. easy_install让python包管理变得 如果你想对Pytho ...
- Activity 生命周期及其栈管理方式
Activity 生命周期 Android 系统用栈的形式管理 Activity , 当新的 Activity 被创建是, 会被放置到栈顶, 这个 Activity 会进入到运行状态, 而前一个 Ac ...
- 【BZOJ】1452: [JSOI2009]Count
http://www.lydsy.com/JudgeOnline/problem.php?id=1452 题意:n×m的矩阵上每个点有个颜色,现在有q个操作:1 x y c 将点(x,y)的颜色改为c ...
- HttpClient_用Apache HttpClient实现URL重定向
很多网站都使用了URL重定向技术,把一个原始请求从一个位置路由到另一个位置.原因可能是多方面的,比如域名转发.URL缩写.隐私保护.在同一网站维持相似的域名等.本文讲述怎样使用Apache HTTPC ...
- [iOS经典面试题]用变量a给出下面的定义
用变量a给出下面的定义 a)一个整型数(An integer) b) 一个指向整型数的指针(A pointer to an integer) c) 一个指向指针的的指针,它指向的指针是指 ...
- hdu I NEED A OFFER!
这道题是道很基本的0/1背包的问题,为了使解题很简单一点,可以将题目中要求的最大概率转换成不能录取的最小概率,这样1-dp[n]即为至少有一个offer的最大概率.状态方程 为:dp[j]=min{d ...
- linux中执行命令权限不够怎样处理
在linux中执行命令权限不够就要增加权限,先看遇到的情况 查看权限情况 那就赋予权限 执行命令