版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十章使用Ajax改进用户体验1使用Ajax改进用户体验第1页回顾怎样手动创建webservice服务端?怎样手动创建webservice客户端?怎样自动创建webservice服务端?怎样自动创建webservice客户端?怎样使用log4j2使用Ajax改进用户体验第2页掌握Ajax技术原理掌握基于Ajax技术应用编程掌握基于DWR框架应用编程本章目标3使用Ajax改进用户体验第3页Web2.0互联网历史动态网页静态网站null黑暗年代革命啦,革命啦!三五年就来一次4使用Ajax改进用户体验第4页Web2.0Web2.0特点内容聚合:新闻分类用户贡献内容社会化网络5使用Ajax改进用户体验第5页为何使用Ajax无刷新:不刷新整个页面,只刷新局部无刷新好处只更新部分页面,有效利用带宽只是登录,没必要刷新“庞大”页面。6使用Ajax改进用户体验第6页为何使用Ajax无刷新好处提供连续用户体验7使用Ajax改进用户体验第7页什么是AjaxAjax:只刷新局部页面技术AJAX:AsynchronousAndXML异步:发送请求后不等返回结果,由回调函数处理结果JavaScript:向服务器发起请求,取得返回结果,更新页面用途使用JavaScript从服务器获取数据而无须刷新整个页面Asynchronous
异步JavaScriptAndXML8使用Ajax改进用户体验第8页怎样使用_
当输入焦点离开用户名输入框时检验用户是否存在。<html:textproperty="item.uname"
onblur="returncheckUserExists(this);"/>functioncheckUserExists(oCtl){varuname=oCtl.value;if(!uname){alert("用户名不能为空");oCtl.focus();return;}//发送请求到服务器,判断用户名是否存在
......Ajaxhere......}9使用Ajax改进用户体验第9页怎样使用AjaxpublicclassUserActionextendsBaseAction{ privateUserBizuserBiz=null; publicActionForwarddoCheckUserExists(...) throwsServletException,IOException{ Stringuname=request.getParameter("uname"); booleanbExists=this.getUserBiz().isExists(uname); PrintWriterout=response.getWriter(); out.print(bExists);
returnnull; }}1、编写服务器段代码效果假如用户名已存在就输出true,不然输出false。10使用Ajax改进用户体验第10页怎样使用Ajax2、使用XMLHttpRequest组件发送请求varxmlHttpRequest;functioncreateXmlHttpRequest(){if(window.ActiveXObject){returnnewActiveXObject("Microsoft.XMLHTTP");}elseif(window.XMLHttpRequest){returnnewXMLHttpRequest();}}判断不一样浏览器,采取不一样方式创建XMLHttpRequest对象//发送请求到服务器,判断用户名是否存在//请求字符串varurl="?operate=doCheckUserExists&uname="+uname;//1.创建XMLHttpRequest组件xmlHttpRequest=createXmlHttpRequest();//2.设置回调函数xmlHttpRequest.onreadystatechange=haoLeJiaoWo;//3.初始化XMLHttpRequest组件xmlHttpRequest.open("GET",url,true);//4.发送请求xmlHttpRequest.send(null);请求字符串状态改变时,将要调用函数名字11使用Ajax改进用户体验第11页怎样使用Ajax补充:使用XMLHttpRequest组件发送请求window.ActiveXObject什么意思?解:判断浏览器是否支持ActiveX控件。假如浏览器支持ActiveX控件能够利用varxml=newActiveXObject(“Microsoft.XMLHTTP”);创建XMLHttpRequest对象(这是在IE7以前版本中);在较新IE版本中能够利用varxml=newActiveXObject("Msxml2.XMLHTTP")形式创建XMLHttpRequest对象;而在IE7及非IE浏览器中能够利用varxml=newXMLHttpRequest()创建XMLHttpRequest对象12使用Ajax改进用户体验第12页怎样使用Ajax3、编写回调函数代码:处理返回结果更新页面显示状态改变时,将要调用函数名字functionhaoLeJiaoWo(){if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){varb=xmlHttpRequest.responseText;if(b=="true"){ alert("用户名已经存在");}else{ alert("用户名能够使用");}}}请求状态:0--未初始化1--初始化2--发送请求3--开始接收结果4--接收结果完成每次状态改变都会调这个函数HTML返回码:200--OK404--Notfound(没有找到资源)500--服务器端犯错取得返回结果:true或false。演示示例:使用Ajax判断用户是否存在13使用Ajax改进用户体验第13页小结当资料内容过多时,按字首字母分类存放更便于查找。怎样实现以下功效:如右图,点对应字母,从数据库加载该字
母打头用户。只更新列表,不刷新页面。 写出相关JavaScript代码。提醒:publicActionForwardtoUserList(...){Stringletter=request.getParameter("letter");Listlist=this.getUserBiz.getListByInitial(letter);...returnmapping.findForward("user_list");}提醒:varoList=document.getElementsById("uList");oList.innerHtml=xmlHttpRequest.responseText;14使用Ajax改进用户体验第14页Ajax框架Ajax应用越来越广泛,客观上需要简化开发过程各种Ajax框架层出不穷,各有特色DWR应用最为广泛/dwr15使用Ajax改进用户体验第15页Ajax框架DWR--DrectWebRemoting开源,无偿Ajax框架将Java类公布为JavaScript可调用脚本对象提供JavaScript工具类,简化页面编码/dwr16使用Ajax改进用户体验第16页Ajax框架在项目中应用DWR1、准备工作下载dwr.jar,添加到项目中(/dwr)创建配置文件:/WEB-INF/dwr.xml在web.xml中配置<servlet><servlet-name>dwr</servlet-name><servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class></servlet><servlet-mapping><servlet-name>dwr</servlet-name><url-pattern>/dwr/*</url-pattern></servlet-mapping>作为servlet配置17使用Ajax改进用户体验第17页怎样使用DWR在项目中使用DWR2、公布Java类<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEdwrPUBLIC "-//GetAheadLimited//DTDDirectWebRemoting2.0//EN" "/dwr/dwr20.dtd"><dwr><allow><createcreator="new"javascript="JUserChecker"><paramname="class" value=".UserManager"/><includemethod="check"/></create></allow></dwr>要公布类名要公布方法名脚本对象名验证公布成功18使用Ajax改进用户体验第18页怎样使用DWR在项目中使用DWR3、页面代码<scriptsrc='dwr/interface/JUserChecker.js'></script><scriptsrc='dwr/engine.js'></script><scriptsrc='dwr/util.js'></script>functioncheckUserExists(oCtl){varuname=oCtl.value;//发送请求到服务器,判断用户名是否存在JUserChecker.check(uname,haoLeJiaoWo);}functionhaoLeJiaoWo(isExist){if(is
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025大学食堂承包合同范本
- 工业生产车间钢结构楼梯施工协议
- 企业国际化发展战
- 住宅小区批荡施工合同
- 餐饮业授权经营的管理办法
- 投标联合体合规协议
- 会计审计合同管理规则
- 零售连锁公司广告牌安装施工合同
- 医疗技术合作保险
- 2024年特种用途树木研发与销售合同范本3篇
- 浙江大学医学院附属儿童医院招聘人员真题
- 2024年江苏省苏州市中考数学试卷含答案
- 软件测试汇报
- 吉林省长春市第一〇八学校2024-2025学年七年级上学期期中历史试题
- 2024年世界职业院校技能大赛高职组“市政管线(道)数字化施工组”赛项考试题库
- 初中《孙中山诞辰纪念日》主题班会
- 5.5 跨学科实践:制作望远镜教学设计八年级物理上册(人教版2024)
- 屠呦呦课件教学课件
- 阿斯伯格综合症自测题汇博教育员工自测题含答案
- 护理肝癌的疑难病例讨论
- 天津市2023-2024学年七年级上学期语文期末试卷(含答案)
评论
0/150
提交评论