1.由前端页面发送Ajax请求至服务器端.
代码
function QueryList(no){
var url="getXML.do";
var pars="pageNo="+no;
var ajax=new Ajax.Request(url,{
method:'get',
parameters:pars,
onComplete:showResponse
});
< type="text/javascript">render_code();
代码
//回调
function showResponse(request){
var parser=new MyXmlParser();
parser.load(request);
var dataList=parser.itemList;
var pageList=parser.pageList;
showTable(dataList,pageList);
< type="text/javascript">render_code();
这里用到的是prototype-1.4.0.js中的Ajax对象.
2.服务器端处理程序到数据库查询数据并生成xml档返回.
代码
StringBuffer resultXML = new StringBuffer();
int pageNo = new Integer(request.getParameter("pageNo")).intValue();
try {
resultXML.append("<?xml version='1.0' encoding='gb2312'?>");
resultXML.append("<ajax-response>\n");
resultXML.append("<root>\n");
Pagination page = new Pagination(request, 100);
List list = this.getTestList(page.getStart(), page.getPageSize());
for (int i = 0; i < list.size(); i++) {
TestBean bean = (TestBean) list.get(i);
resultXML.append("<data>\n");
resultXML
.append("\t<id>" + bean.getId().toString() + "</id>\n");
resultXML.append("\t<name>" + bean.getName() + "</name>\n");
resultXML.append("\t<sex>" + bean.getSex() + "</sex>\n");
resultXML.append("\t<age>" + bean.getAge().toString()
+ "</age>\n");
resultXML.append("</data>\n");
}
resultXML.append("<pagination>\n");
resultXML.append("\t<total>" + page.getTotal() + "</total>\n");
resultXML.append("\t<start>" + page.getStart() + "</start>\n");
resultXML.append("\t<end>" + page.getEnd() + "</end>\n");
resultXML.append("\t<pageno>" + page.getPageNo() + "</pageno>\n");
resultXML.append("</pagination>\n");
resultXML.append("</root>\n");
resultXML.append("</ajax-response>");
} catch (Exception e) {
e.printStackTrace();
}
writeResponse(request, response, resultXML.toString());
< type="text/javascript">render_code();
3.在Ajax响应方法中对xml解析并生成表格显示到页面.
代码
StringBuffer resultXML = new StringBuffer();
int pageNo = new Integer(request.getParameter("pageNo")).intValue();
try {
resultXML.append("<?xml version='1.0' encoding='gb2312'?>");
resultXML.append("<ajax-response>\n");
resultXML.append("<root>\n");
Pagination page = new Pagination(request, 100);
List list = this.getTestList(page.getStart(), page.getPageSize());
for (int i = 0; i < list.size(); i++) {
TestBean bean = (TestBean) list.get(i);
resultXML.append("<data>\n");
resultXML
.append("\t<id>" + bean.getId().toString() + "</id>\n");
resultXML.append("\t<name>" + bean.getName() + "</name>\n");
resultXML.append("\t<sex>" + bean.getSex() + "</sex>\n");
resultXML.append("\t<age>" + bean.getAge().toString()
+ "</age>\n");
resultXML.append("</data>\n");
}
resultXML.append("<pagination>\n");
resultXML.append("\t<total>" + page.getTotal() + "</total>\n");
resultXML.append("\t<start>" + page.getStart() + "</start>\n");
resultXML.append("\t<end>" + page.getEnd() + "</end>\n");
resultXML.append("\t<pageno>" + page.getPageNo() + "</pageno>\n");
resultXML.append("</pagination>\n");
resultXML.append("</root>\n");
resultXML.append("</ajax-response>");
} catch (Exception e) {
e.printStackTrace();
}
writeResponse(request, response, resultXML.toString());
< type="text/javascript">render_code();
其中还有用到的分页对象Pagination ,及页面的xml解析对象MyXmlParser这里就不贴code出来了.附件中有Demo.war包和project文件.感兴趣的朋友可以下载来看看.
测试环境如下:
JDK:1.5
开发工具:Eclipse3.1
部署服务器:Tomcat5.5
分享到:
相关推荐
其中包含6款Ajax分页Demo,文字分页、图片分页都可以。具有一定特效、很炫。基本已经满足各种web分页开发了。
ASP + Ajax 分页实例 在不刷新网页的状态进行分页。
一个实用的AJAX分页实例 一个实用的AJAX分页实例
使用ajax 实现无刷新分页,指定页码跳转等……内置sql!适合练习参考……
压缩包中包含了 三个不同的压缩文件 Ajax分页 Asp.net 分页 以及提供这些分页的项目代码和真实的Demo 可以下载下来直接 运行 ...
Ajax 操作实例 Ajax结合GridView、UpdatePanel
一个基于Jquery Pagination插件,从服务器端分页读取数据库信息,并显示的实例,服务器端使用Asp,数据库使用Access。
用Jquery Pagination插件,服务器端用ASP.NET MVC3做的一个分页实例,详见:http://hi.baidu.com/tz666/item/7b401707a3e76fdb73e676d4
AJAX分页实例,在开发中会有帮助的,详细介绍JSP中用AJAX分页的实现功能
Ajax分页完整实例分析
简单的ajax分页实例,数据库是mysql,运用jquery、ajax、springMVC技术
angularjs分页实例
启用AJAX分页的话请查看我源代码的实例。 具体逻辑请查看我的源代码。很简单的。我相信一般人都能看懂。 分页代码由 Models 里的 INetMvc3Page.cs 和Views\Shared的 _NetMvc3Page.cshtml 两部分代码组成。其他代码...
采用JQuery Pagination 插件,服务器端采用asp.net ashx,数据库操作采用LinQ TO Entity,实现异步分页操作实例。 具体介绍,详见:http://hi.baidu.com/tz666/item/73a676d9b171041821e250b0
本案例使用ajax技术实现分页,方案为其中一种,其他方案后面会再发,因为项目比较有针对性,所以项目规模很小,便于查看学习,使用前先修改项目中的Constant类中的相关静态变量信息(数据库连接信息)后便可部署。...
ajax分页程序实例vs2005版,其中包含了许多实例程序,用于对数据表进行分页,内容详细,欢迎下载!
叶子JavaScript分页实例,JS分页代码,实现类似ajax分页的效果,无刷新实现分页功能,用JS模拟出了动态获取分页字符串进行无刷新分页的过程,里面的例子有7个,每一个都有不同的分页样式。请注意,此代码不包括后台...
check.rar 第3章 第一个Ajax实例 pageinfo.rar 第9章 鼠标信息提示 suggest.rar 第10章 文本框输入提示 relatechg.rar 第11章 下拉列表自动关联 checkname.rar 第12章 自动检查用户名 savepad.rar 第13章 ...
以一种简单 精炼 灵活的方式来实现分页原理。
此文件为一个ASP.NET AJAX的服务器分页控件,提供了分页控件的程序集,以及少量的实例代码,其中还有不少BUG,希望贴出来跟大家一起研究一下,修改里面的不足之处。该控件的开发是出于本人额外兴趣。