- 浏览: 124173 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
jaogoy:
都没有结论啊。看来非常量的初始化值会导致对应类被加载后才会初始 ...
java classLoader的加载中 static final 变量的初始化时机 -
zqb666kkk:
代码能否给全 还有jar包
lucene学习 highLighter 高亮器 -
zqb666kkk:
lucene 那个版本
lucene学习 highLighter 高亮器 -
FX夜归人:
...
c:forEach varStatus属性
//////1.设计htm页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>test2</title> <script language="javascript" type="text/javascript" src="js/jquery-latest.pack.js"></script> <script language="javascript" type="text/javascript" src="js/PageDate.js"></script> </head> <body> <div> <div> <br /> <input id="first" type="button" value=" << " /><input id="previous" type="button" value=" < " /><input id="next" type="button" value=" > " /><input id="last" type="button" value=" >> " /> <span id="pageinfo"></span> <ul id="datas"> <li id="template"> <span id="OrderID"> 订单ID </span>/ <span id="CustomerID"> 客户ID </span> <span id="EmployeeID"> 雇员ID </span>/ <span id="OrderDate"> 订购日期 </span>/ <span id="ShippedDate"> 发货日期 </span>/ <span id="ShippedName"> 货主名称 </span>/ <span id="ShippedAddress"> 货主地址 </span>/ <span id="ShippedCity"> 货主城市 </span>/ <span id="more"> 更多信息 </span> </li> </ul> </div> <div id="load" style="left: 0px; position: absolute; top: 0px; background-color: red"> LOADING.... </div> <input type="hidden" id="pagecount" /> </div> </body> </html> ////注:ID属性比较重要,用于数据绑定。 /////2.使用jQuery编写AJAX请求文件 var pageIndex = 1 var pageCount = 0; $(function(){ GetPageCount();//取得分页总数 pageCount = parseInt($("#pagecount").val());//分页总数放到变量pageCount里 $("#load").hide();//隐藏loading提示 $("#template").hide();//隐藏模板 ChangeState(0,1);//设置翻页按钮的初始状态 bind();//绑定第一页的数据 //第一页按钮click事件 $("#first").click(function(){ pageIndex = 1; ChangeState(0,1); bind(); }); //上一页按钮click事件 $("#previous").click(function(){ pageIndex -= 1; ChangeState(-1,1); if(pageIndex <= 1) { pageIndex = 1; ChangeState(0,-1); } bind(); }); //下一页按钮click事件 $("#next").click(function(){ pageIndex += 1; ChangeState(1,-1); if(pageIndex>=pageCount) { pageIndex = pageCount; ChangeState(-1,0); } bind(pageIndex); }); //最后一页按钮click事件 $("#last").click(function(){ pageIndex = pageCount; ChangeState(1,0); bind(pageIndex); }); }); //AJAX方法取得数据并显示到页面上 function bind() { $("[@id=ready]").remove(); $("#load").show(); $.ajax({ type: "get",//使用get方法访问后台 dataType: "json",//返回json格式的数据 url: "Handler.ashx",//要访问的后台地址 data: "pageIndex=" + pageIndex,//要发送的数据 complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示 success: function(msg){//msg为返回的数据,在这里做数据绑定 var data = msg.table; $.each(data, function(i, n){ var row = $("#template").clone(); row.find("#OrderID").text(n.OrderID); row.find("#CustomerID").text(n.CustomerID); row.find("#EmployeeID").text(n.EmployeeID); row.find("#OrderDate").text(ChangeDate(n.OrderDate)); if(n.RequiredDate !== undefined) row.find("#ShippedDate").text(ChangeDate(n.RequiredDate)); row.find("#ShippedName").text(n.ShipName); row.find("#ShippedAddress").text(n.ShipAddress); row.find("#ShippedCity").text(n.ShipCity); row.find("#more").html("<a href=OrderInfo.aspx?id=" + n.OrderID + "&pageindex="+pageIndex+"> More</a>"); row.attr("id","ready");//改变绑定好数据的行的id row.appendTo("#datas");//添加到模板的容器中 }); $("[@id=ready]").show(); SetPageInfo(); } }); } function ChangeDate(date) { return date.replace("-","/").replace("-","/"); } //设置第几页/共几页的信息 function SetPageInfo() { $("#pageinfo").html(pageIndex + "/" + pageCount); } //AJAX方法取得分页总数 function GetPageCount() { $.ajax({ type: "get", dataType: "text", url: "Handler.ashx", data: "getPageCount=1", async: false, success: function(msg){ $("#pagecount").val(msg); } }); } //改变翻页按钮状态 function ChangeState(state1,state2) { if(state1 == 1) { document.getElementById("first").disabled = ""; document.getElementById("previous").disabled = ""; } else if(state1 == 0) { document.getElementById("first").disabled = "disabled"; document.getElementById("previous").disabled = "disabled"; } if(state2 == 1) { document.getElementById("next").disabled = ""; document.getElementById("last").disabled = ""; } else if(state2 == 0) { document.getElementById("next").disabled = "disabled"; document.getElementById("last").disabled = "disabled"; } } /////3.利用JSON三方控件在服务器端获取JSON格式数据 <%@ WebHandler Language="C#" Class="jQueryJSON.Handler" %> using System; using System.Data; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; using System.Configuration; using System.Data.SqlClient; using System.Text; using System.Xml; using NetServ.Net.Json; namespace jQueryJSON { /// <summary> /// $codebehindclassname$ 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/json/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Handler : IHttpHandler { readonly int PageSize = int.Parse(ConfigurationManager.AppSettings["PageSize"]); public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; //不让浏览器缓存 context.Response.Buffer = true; context.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); context.Response.AddHeader("pragma", "no-cache"); context.Response.AddHeader("cache-control", ""); context.Response.CacheControl = "no-cache"; string result = ""; if (context.Request.Params["getPageCount"] != null) result = GetPageCount(); if (context.Request.Params["pageIndex"] != null) { string pageindex = context.Request.Params["pageIndex"]; //if (context.Cache.Get(pageindex) != null) // result = context.Cache.Get(pageindex).ToString(); //else //{ // result = GetPageData(context.Request.Params["pageIndex"]); // context.Cache.Add( // pageindex, // result, // null, // DateTime.Now.AddMinutes(1), // System.Web.Caching.Cache.NoSlidingExpiration, // System.Web.Caching.CacheItemPriority.Default, // null); //} result = GetPageData(context.Request.Params["pageIndex"]); } context.Response.Write(result); } private string GetPageData(string p) { int PageIndex = int.Parse(p); string sql; if (PageIndex == 1) sql = "select top " + PageSize.ToString() + " * from Orders order by OrderID desc"; else sql = "select top " + PageSize.ToString() + " * from Orders where OrderID not in(select top " + ((PageIndex - 1) * PageSize).ToString() + " OrderID from Orders order by OrderID desc) order by OrderID desc"; string dbfile = ConfigurationManager.ConnectionStrings["conn"].ToString(); SqlConnection conn = new SqlConnection(dbfile); SqlDataAdapter da = new SqlDataAdapter(sql, conn); DataTable dt = new DataTable("table"); da.Fill(dt); return DataTableJson(dt); } private string GetPageCount() { string dbfile = ConfigurationManager.ConnectionStrings["conn"].ToString(); SqlConnection conn = new SqlConnection(dbfile); SqlCommand cmd = new SqlCommand("select count(*) from Orders", conn); conn.Open(); int rowcount = Convert.ToInt32(cmd.ExecuteScalar()); conn.Close(); return ((rowcount + PageSize - 1) / PageSize).ToString(); } private string DataTable2Json(DataTable dt) { StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\""); jsonBuilder.Append(dt.TableName); jsonBuilder.Append("\":["); for (int i = 0; i < dt.Rows.Count; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(dt.Rows[i][j].ToString()); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1, 1); jsonBuilder.Append("]"); jsonBuilder.Append("}"); return jsonBuilder.ToString(); } private string DataTableJson(DataTable dt) { JsonWriter writer = new JsonWriter(); JsonObject content = new JsonObject(); JsonArray Orders = new JsonArray(); JsonObject Order; JsonObject OrderItem = new JsonObject(); for (int i = 0; i < dt.Rows.Count; i++) { Order = new JsonObject(); for(int j =0;j<dt.Columns.Count;j++) { Order.Add(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString()); } Orders.Add(Order); } content.Add(dt.TableName, Orders); content.Write(writer); writer = new IndentedJsonWriter(); content.Write(writer); return writer.ToString(); } public bool IsReusable { get { return false; } } } }
发表评论
-
struts2 实现for循环
2012-03-22 10:15 1006struts2 实现for循环: <s:bean na ... -
HttpServletResponse 下载代码
2011-12-14 16:05 1241response.setContentType("a ... -
Struts2 学习笔记
2011-12-14 14:00 1260一、导入jar包,配置web.xml中的<filter& ... -
判断IE和firefox浏览的简单用法
2011-11-30 12:28 905!(-[1, ]) if(!(-[1, ])){ ... -
IE与FIREFOX的兼容问题
2011-11-30 12:24 941Event的问题 在ie中我 ... -
jquery ajax
2011-11-24 15:58 1375一,$.get(url,[data],[callback]) ... -
el fn 标签
2011-11-21 12:29 1413详见org.apache.taglibs.standard.f ... -
转:jQuery定位跳转插件(jquery.scrollto.js)
2011-11-10 12:46 4使用方法: $(‘ ... -
转:ckeditor编辑器jsp添加及属性列表
2011-11-10 12:15 2336到http://ckeditor.com/download下 ... -
转:response.setHeader()
2011-11-08 12:49 1164response.setHeader()下载中文文件名乱码 ... -
iframe 自适应,标题党
2011-11-07 17:29 1117通过Google搜索iframe 自适应高度,结果5W多条 ... -
c:forEach varStatus属性
2011-11-07 10:51 82839c:forEach varStatus属性 ...
相关推荐
JavaScript分页是网页开发中一个常见且重要的功能,它用于处理大量数据的显示,通过将数据分割成小块,逐页加载,提高了用户体验并优化了页面性能。在本项目中,我们将探讨如何使用纯JavaScript实现分页功能,以及...
7. **类库与插件**:在实际开发中,我们往往使用现有的JavaScript分页库,如`bootstrap-paginator.js`、`pager.js`或本案例中的`Cls_jsPage.js`,这些库封装了上述逻辑,提供更易用的API。 8. **示例代码**:`demo....
这个压缩包中包含了多个JavaScript分页代码示例,适合网页开发者参考和直接应用。 分页效果的实现通常包括以下几个核心部分: 1. 数据获取:首先,需要获取要分页展示的数据。这些数据可以来源于服务器端(如通过...
JavaScript分页是网页开发中常用的一种技术,用于处理大量数据时,将数据分割成多个页面进行展示,提高用户体验。在不加载所有数据的情况下,只加载用户当前查看的部分,这样可以减少页面加载时间,提高页面性能。...
JavaScript分页是网页开发中常见的功能,用于处理大量数据时分块显示,提高用户体验。以下是对这个通用JavaScript分页实现的详细解析: 1. **变量定义**: - `totalNum`:总记录数,表示数据源中的条目总数。 - `...
本文介绍了一个使用JavaScript实现的简单分页组件,该组件通过HTML、CSS和JavaScript完成了一个基本的分页功能。...用户可以很轻松地将分页...对于初学者来说,这个组件可以作为学习JavaScript分页功能的一个良好起点。
JavaScript分页是网页开发中的一个重要技术,特别是在处理大数据集或长列表时,为了提高用户体验,通常会采用分页展示数据。这个"10种JavaScript分页代码.rar"压缩包文件包含了一系列实现JavaScript分页功能的源代码...
JavaScript分页是网页开发中的一个重要技术,特别是在处理大数据集或长列表时,为了提高用户体验,通常会采用分页展示数据。这些分页代码示例提供了多种实现方式,可以帮助开发者理解和应用JavaScript分页功能。 ...
JavaScript分页是网页开发中的一个重要技术,用于处理大量数据或内容的显示,使得用户可以方便地浏览和导航。在网页中,当数据无法一次性完全加载时,分页就显得尤为重要,它可以提高页面加载速度,优化用户体验。...
JavaScript分页控件是网页开发中常用的一种组件,主要用于处理大量数据时的页面显示,以提高用户体验和网页加载效率。2009年3月12日发布的这个资源可能是一个JavaScript实现的分页插件或者代码库,它可以帮助开发者...
下面我们将深入探讨JavaScript分页控件的相关知识点。 一、JavaScript分页的基本原理 1. 数据分块:JavaScript分页控件的核心思想是将大量数据分成若干小块(页)进行加载。每次只加载用户当前浏览的一页数据,...
JavaScript分页是一种常见的网页交互功能,它允许用户在大量数据中按需加载和切换页面,提高用户体验。这个经典JavaScript分页代码实现了一个名为`Page`的类,用于处理分页逻辑。下面将详细解析这个代码中的关键知识...
本资源包含10种JavaScript分页效果的实现,旨在帮助开发者更好地理解和应用这一技术。 1. **基础分页**: 基础的分页通常包括数字链接,用户可以点击来跳转到不同的页面。这种分页方式简单直观,易于实现,但可能...
《laypage多功能JavaScript分页组件 v1.3-源码》是专为前端开发者设计的一款高效、易用的分页插件。它以其强大的功能、灵活的配置选项和简洁的API,深受广大开发者喜爱。在深入理解并使用这款组件之前,我们需要先...
总的来说,"高效的JavaScript分页筛选TinyTable表格插件"是一个强大的工具,可以帮助开发者创建具有高性能和用户友好的数据展示界面。它不仅简化了前端开发流程,而且通过提供动态筛选和分页功能,提升了用户对大量...
### JavaScript分页(页码生成)详解 在Web开发中,分页是处理大量数据时常用的一种技术,它能够有效地提升用户体验,避免一次性加载过多数据导致页面响应缓慢。本文将详细解析一个基于JavaScript的简单分页实现...
JavaScript分页是网页开发中一个常见的技术,它允许用户在不刷新整个页面的情况下,通过点击按钮或链接来加载更多的内容。这种技术对于处理大量数据,如数据库查询结果、文章列表或者用户评论等,非常有效,提高了...