Asp.net+JS 分页
function pagestart() {//初始化页面,获取公司新闻
$("#pagediv").hide();
$("#CurrentPage").val("");
var pagesize = $("#pagesize").val();
var requesttye = $("#requesttype").val();
var par = '{"pageIndex":"0","pageSize":"' + pagesize + '","classid":"' + $("#classid").val() + '","requesttye":"' + requesttye + '"}';
getdata(par);
}
function getUrlParam(name) {//获取地址栏参数
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
var r = window.location.search.substr().match(reg); //匹配目标参数
if (r != null) return unescape(r[]); return null; //返回参数值
}
function getlist(th, classid) {//不同分类列表内容获取
$("#requesttype").val("list");
var currentclassid = $("#classid").val();
if (currentclassid != classid) {
$("#classid").val(classid);
$("#CurrentPage").val("");
}
var pagesize = $("#pagesize").val();
$(th).addClass("checked").siblings().removeClass("checked");
var requesttye = $("#requesttype").val();
var par = '{"pageIndex":"' + $("#CurrentPage").val() + '","pageSize":"' + pagesize + '","classid":"' + classid + '","requesttye":"' + requesttye + '"}';
getdata(par);
}
function getdata(par) {//根据类型,获取分页列表或单条内容
var requesttye = $("#requesttype").val();
$.post("/HandlePage/PostHandler.ashx", { "type": requesttye, "par": par }, function (data) {
var newfull = $.parseJSON(data);
if (newfull.pageCount != "") {
if (requesttye == "getcontent") {
$("#newcontent").html(newfull.content);
$("#newcontent").show();
$("#newsListShow").hide();
$("#pagediv").hide();
} else {
PageControl(newfull.pageCount);
$("#newsListShow").html(newfull.content);
$("#newsListShow").show();
$("#newcontent").hide();
$("#pagediv").show();
}
} else {
$("#newsListShow").html("");
$("#pagediv").hide();
$("#newcontent").hide();
}
});
}
function PageControl(datacount) {//分页按钮显示隐藏控制
var currentpage = $("#CurrentPage").val();
var pagesize = $("#pagesize").val();
var pagecount = Math.ceil(datacount / pagesize);
$("#pagecount").val(pagecount);
PageNumberControl(pagecount);
} function PageNumberControl(pagecount) {//控制按钮上显示的页码数字
var ButtonArray = ["pageone", "pagetwo", "pagethree", "pagefour", "pagefive"];
var CurrentPageNumber = $("#CurrentPage").val(); //查询页码
var RealPageNumber = parseInt(CurrentPageNumber) + ; //看到的页码
if (pagecount > ) {//总页数大于5页时,控制页号
if (RealPageNumber > ) {
if (RealPageNumber == (parseInt(pagecount) - )) {
$("#pageone").text(parseInt(RealPageNumber) - );
$("#pagetwo").text(parseInt(RealPageNumber) - );
$("#pagethree").text(RealPageNumber);
$("#pagefour").text(parseInt(RealPageNumber) + );
$("#pagefive").text(parseInt(RealPageNumber) + );
} else if (RealPageNumber == (parseInt(pagecount) - )) {
$("#pageone").text(parseInt(RealPageNumber) - );
$("#pagetwo").text(parseInt(RealPageNumber) - );
$("#pagethree").text(parseInt(RealPageNumber) - );
$("#pagefour").text(RealPageNumber);
$("#pagefive").text(parseInt(RealPageNumber) + );
}
else if (RealPageNumber == pagecount) {
$("#pageone").text(parseInt(RealPageNumber) - );
$("#pagetwo").text(parseInt(RealPageNumber) - );
$("#pagethree").text(parseInt(RealPageNumber) - );
$("#pagefour").text(parseInt(RealPageNumber) - );
$("#pagefive").text(RealPageNumber);
} else if (RealPageNumber <= (parseInt(pagecount) - )) {
$("#pageone").text(parseInt(RealPageNumber) - );
$("#pagetwo").text(parseInt(RealPageNumber) - );
$("#pagethree").text(RealPageNumber);
$("#pagefour").text(parseInt(RealPageNumber) + );
$("#pagefive").text(parseInt(RealPageNumber) + );
}
}
}
else {//总页数少于6页时,控制页号
for (var pn = ; pn < ; pn++) {
$("#" + ButtonArray[pn]).text(parseInt(pn) + );
}
}
PageMoreButtonControl(RealPageNumber, pagecount);//更多提示控制
PageButtonHideOrShow(RealPageNumber,pagecount);//页码显示按键控制
}
function PageButtonHideOrShow(RealPageNumber,PageCount) {//控制页码按键和样式
var ButtonArray = ["pageone", "pagetwo", "pagethree", "pagefour", "pagefive"]; for (var j = ; j < ; j++) {//显示所有按键
$("#" + ButtonArray[j]).show();
} if (PageCount < ) {//根据总页数隐藏不需要显示的页码按钮
for (var i = PageCount; i < ; i++) {
$("#" + ButtonArray[i]).hide();
}
}
var ShowPageNumber = ;
for (var a = ; a < ; a++) {//控制按键样式
ShowPageNumber = $("#" + ButtonArray[a]).text();
if (ShowPageNumber == RealPageNumber) {
$("#" + ButtonArray[a]).addClass("checked").siblings().removeClass("checked");
break;
}
}
}
function PageMoreButtonControl(RealPageNumber, PageCount) {
if (PageCount <= ) {
$("#promore").hide();
$("#nextmore").hide();
} else {
if (RealPageNumber > && RealPageNumber < (PageCount - )) {
$("#promore").show();
$("#nextmore").show();
} else if (RealPageNumber > ) {
$("#promore").show();
$("#nextmore").hide();
} else if (RealPageNumber < (PageCount - )) {
$("#promore").hide();
$("#nextmore").show();
}
}
}
function ProPage() {//前一页
var oldpage = $("#CurrentPage").val();
var currentpage = parseInt(oldpage) -
ChangePage(currentpage);
}
function GetPage(th) {//获取指定页
var pageindex = $(th).text();
var currentpage = pageindex - ;
ChangePage(currentpage);
}
function NextPage() {//获取下一页
var oldpage = $("#CurrentPage").val();
var currentpage = parseInt(oldpage) +
ChangePage(currentpage);
}
function FirstPage() {//跳转到第一页
ChangePage();
}
function LastPage() {//跳转到最后一页
var pagecount = $("#pagecount").val();
var QuaryPage = parseInt(pagecount) - ;
ChangePage(QuaryPage);
}
function ChangePage(currentpage) {//判断请求页码是否在合理范围内
var pagecount = $("#pagecount").val();
var pagesize = $("#pagesize").val();
if (currentpage >= && currentpage < pagecount) {
$("#CurrentPage").val(currentpage);
var requesttye = $("#requesttype").val();
var par = '{"pageIndex":"' + currentpage + '","pageSize":"' + pagesize + '","classid":"' + $("#classid").val() + '","requesttye":"' + requesttye + '"}';
getdata(par);
}
}
<input type="hidden" id="CurrentPage" value="0"/>
<input type="hidden" id="pagesize" value="10" />
<input type="hidden" id="pagecount" /> <div id="pagediv">
<ul>
<li id="firstpage" onclick="FirstPage();"><img src="/images/firstpage.jpg" /></li>
<li id="propage" onclick="ProPage();">
<img src="/images/page_front.png" /></li>
<li class="page-more" id="promore">
<img src="/images/page_more.jpg" /></li>
<li class="checked" id="pageone" onclick="GetPage(this);"></li>
<li id="pagetwo" onclick="GetPage(this);"></li>
<li id="pagethree" onclick="GetPage(this);"></li>
<li id="pagefour" onclick="GetPage(this);"></li>
<li id="pagefive" onclick="GetPage(this);"></li>
<li class="page-more" id="nextmore">
<img src="/images/page_more.jpg" /></li>
<li id="nextpage" onclick="NextPage();">
<img src="/images/page_last.png" /></li>
<li id="lastpage" onclick="LastPage();"><img src="/images/lastpage.png" /></li>
</ul>
</div>
ASP.NET页面代码
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
int type = int.Parse(context.Request["type"]);
string result = string.Empty;
int index = int.Parse(context.Request["index"]);
int size = int.Parse(context.Request["size"]);
result = GetEnterpriseHonor(, index, size); } private string GetEnterpriseHonor(int type, int index, int size)
{
DataTable dt = qd.SigleTabelPaging("iwms_news", "title,content", "classid=" + type, index, size, "articleid");
if (dt.Rows.Count > )
{
Regex reg = new Regex(@"upload.*?\.[a-z]{3,}");//图片地址正则
StringBuilder honorsb = new StringBuilder();
foreach (DataRow dr in dt.Rows)
{
string tem = dr["title"].ToString();
MatchCollection mcs = reg.Matches(dr["content"].ToString());//抓取图片地址
if (mcs.Count > )
{
if(tem.Length>){
honorsb.Append("<li onclick=\"HonorClick('/" + mcs[].ToString() + "')\"><a href='#'><img src='/" + mcs[].ToString() + "'></a><a href='#'>" + tem.Substring(, ) + "......</a></li>");
}else{
honorsb.Append("<li onclick=\"HonorClick('/" + mcs[].ToString() + "')\"><a href='#'><img src='/" + mcs[].ToString() + "'></a><a href='#'>" + tem+ "</a></li>");
} }
else
{
if (tem.Length > )
{
honorsb.Append("<li onclick=\"HonorClick('/" + mcs[].ToString() + "')\"><a href='#'><img src='/" + mcs[].ToString() + "'></a><a href='#'>" + tem.Substring(, ) + "......</a></li>");
}
else
{
honorsb.Append("<li onclick=\"HonorClick('/" + mcs[].ToString() + "')\"><a href='#'><img src='/" + mcs[].ToString() + "'></a><a href='#'>" + tem + "</a></li>");
}
} //honorsb.Append("<li onclick=\"HonorClick('"图片地址"')\"><a href='#'>" + dr["content"].ToString().Replace("upload/", "/upload/") + "</a><a href='#'>" + tem.Substring(tem.LastIndexOf('_') + 1) + "</a></li>");
}
honorsb.Append("@=" + dt.Rows[]["rc"].ToString());
return honorsb.ToString();
}
return "";
} private class MessageContent
{
/// <summary>
/// 标识
/// </summary>
public string id { get; set; }
/// <summary>
/// 分类id
/// </summary>
public string classid {get;set;}
/// <summary>
/// 页大小
/// </summary>
public int pageSize { get; set; }
/// <summary>
/// 第几页
/// </summary>
public int pageIndex { get; set; }
/// <summary>
/// 主要内容
/// </summary>
public string content { get; set; }
/// <summary>
/// 总页数
/// </summary>
public string pageCount { get; set; }
/// <summary>
/// 获取数据类型
/// </summary>
public string requesttye { get; set; }
}
public bool IsReusable
{
get
{
return false;
}
}
AJAX请求处理
Asp.net+JS 分页的更多相关文章
- 非常不错的一个JS分页效果代码
这里分享一个不错的js分页代码. 代码中cpage是页面计数,应为全局变量,可以随处调用它: totalpage是总页数. 与asp分页代码很类似,也是先取得记录总数,然后实现分页,基本的分页思路与原 ...
- [转]jquery.pagination.js分页
本文转自:http://www.cnblogs.com/knowledgesea/archive/2013/01/03/2841554.html 序言 这一款js分页使用起来很爽,自己经常用,做项目时 ...
- js分页小结
今天解决了JS分页的问题1 页码 给每页的内容套一个相同的类名 通过选择器加上.length或者.size() 来获得总页数2当前页的页码可以使用each(function(index,DOMsss ...
- ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版
MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottGu的PagedList< ...
- 自己封装的JS分页功能[用于搭配后台使用]
* 2016.7.03 修复bug,优化代码逻辑 * 2016.5.25 修复如果找不到目标对象的错误抛出. * 2016.5.11 修复当实际页数(pageNumber)小于生成的页码间隔数时的bu ...
- jsp、js分页功能的简单总结
一.概述 首先,我们要明确为何需要分页技术,主要原因有以下: 1.分页可以提高客户体验度,适当地选择合适的数据条数,让页面显得更有条理,使得用户体验感良好,避免过多数据的冗余. 2.提高性能的需要.分 ...
- ASP.NET MVC分页实现之改进版-增加同一个视图可设置多个分页
我之前就已经实现了ASP.NET MVC分页(查看该博文),但它有局限性,必须确保在同一个视图中只能有一处分页,若需要在同一个视图中设置多个分页,却无能为力,为此,我重新对原先的代码进行了优化,增加了 ...
- 一个重构的js分页类
// JavaScript Document /**//** * js分页类 * @param iAbsolute 每页显示记录数 * @param sTableId 分页表格属性ID值,为Strin ...
- 面向对象版js分页
基于前一个js分页,我将代码改成一个面向对象版的js分页,代码如下 http://peng666.github.io/blogs/pageobj <!DOCTYPE html> <h ...
随机推荐
- QQ个人文件夹中的文件被占用,解决办法
我的情况是记住密码的账号不可以登录,不记住密码的账号确可以登录,突然就这样,我也很郁闷. 找到路径C:\Users\Public\Documents\Tencent\QQ下的UserDataInfo. ...
- WinNTSetup v3.8.7 正式版绿色增强版
最强系统安装利器:WinNTSetup 现已更新至 v3.8.7 正式版!这次更新修复调整了诸多问题,新版非常好用接近完美!WinNTSetup 现在已经自带BCDBoot 选项,并且完全支持Wind ...
- 用类(function(){})()实现点击显示index索引值的详解
code: <script type="text/javascript"> ; i < ; i++){ var btn = document.createElem ...
- U盘因为装linux系统变小了
U盘在Windows下被UltraISO等软件制作成Linux启动盘后会自动被格式化成FAT格式,导致容量变小. 用DiskGenius去修复 http://www.jb51.net/softs/75 ...
- 基于Linux平台的libpcap源码分析和优化
目录 1..... libpcap简介... 1 2..... libpcap捕包过程... 2 2.1 数据包基本捕包流程... 2 2.2 libpcap捕包过程... ...
- 网站访问量大 怎样优化mysql数据库
MySQL优化的一些建议,单机MySQL的优化我分为三个部分,一是服务器物理硬件的优化,二是 MySQL安装时的编译优化,三是自身配置文件my.cnf的优化:如果单机的优化也解决不了你的数据库的压力的 ...
- 11月6日下午PHP分页查询(查询结果也显示为分页)
1.先把数据库里所有的数据分页显示在页面,并在显示数据的表格上方加上查询表单. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit ...
- ArcGIS Server开发教程系列(7)使用ArcGIS API for Javascript-Hello World
ArcGIS API for Javascript API下载地址:http://support.esrichina-bj.cn/2011/0223/960.html 选择最新的下载就好了,目前是3 ...
- [Fluent NHibernate]一对多关系处理
目录 写在前面 系列文章 一对多关系 总结 写在前面 上篇文章简单介绍了,Fluent Nhibernate使用代码的方式生成Nhibernate的配置文件,以及如何生成持久化类的映射文件.通过上篇的 ...
- PHP代码编写规范
一. 变量命名 a) 所有字母都使用小写 b) 首字母根据变量值类型指定 i. 整数i ii. 浮点数f iii. 字符串s iv. 布尔值b v. 数组a vi. 对象o vii. 资源r viii ...