AjaxAnywhere的配置

AjaxAnywhere的配置       
ajaxanywhere的环境配置:
1、把 ajaxanywhere-1.2-RC2.jar 压缩包复制到  \工程名\WebRoot\WEB-INF\lib 目录下。
2、把 ajaxanywhere.tld 文件复制到 \工程名\WebRoot\WEB-INF 目录下。
3、把 js 文件夹复制到  \工程名\WebRoot  目录下。
4、把 log4j-1.2.11.jar 加到WebRoot\WEB-INF\lib 目录下
5、在 web.xml 中添加 ajax 的配置 
	<!-- Ajax配置开始,带编码转换(包括ajax提交的编码) -->	
	<filter>
		<filter-name>AjaxAnywhere</filter-name>
		<filter-class>org.ajaxanywhere.AAFilter</filter-class>
		<init-param>
			<param-name>ShowInfo</param-name>
			<param-value>false</param-value>
		</init-param>
		<init-param>
			<param-name>encoding</param-name><!-- 普通提交方式编码 -->
			<param-value>GB2312</param-value>
		</init-param>
		<init-param>
			<param-name>ajaxencoding</param-name><!-- AJAX提交方式编码 -->
			<param-value>GB2312</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>AjaxAnywhere</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<!-- Ajax配置结束 -->
6、新建 login.jsp 文件,添加 ajax 标签
<%@ page language="java" pageEncoding="gbk"%> 
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %> 
<%@ taglib uri="/WEB-INF/ajaxanywhere.tld" prefix="ajax"%> 
7、导入 ajax 文件
<!--  select.js 主要有:onSelect() 与 onSelectAll()方法-->
<script src="js/select.js" type="text/javascript"></script>
<!--  Ajax JS 与ajvaAnywhere 组件包结合使用 必须-->
<script src="js/ajax.js" type="text/javascript"></script> 
8、定义刷新热区 
<label>
<ajax:zone name="AdminZone">
<font color="red">${requestScope.IsAdmin }</font>
</ajax:zone>
</label>
9、定义触发事件:
<input name="aname" type="text" class="input_normal" id="aname"  οnblur="checkuser()">
 可以是: 失去焦点、点击、双击
10、编写脚本方法:
<script type="text/javascript">
 //ajax 判断用户是否存在
	function checkuser(){
	    var username=document.loginForm.aname.value;
if(username!=""){	      
//ajaxAnywhere.getAJAX("adminAction.do?methods=isAdmin&aname="+username);
	      document.loginForm.action="login.do?methods=isAdmin";
	      ajaxAnywhere.formName="loginForm";
	      ajaxAnywhere.submitAJAX();
	      
	    }
	}
</script>
11、建立相应的 form 和 action 
  	/**
	 * 可以用Ajax来判断用户名是否存在(登陆验证)
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward isAdmin(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
		
		LoginForm loginForm = (LoginForm) form;
		// 处理刷新区域
		if (AAUtils.isAjaxRequest(request)) {
			/**下面的AdminExistZone 为热区的名字,
			即在jsp中<aa:zone name="AdminExistZone">...</aa:zone>中的name属性的值*/
			AAUtils.addZonesToRefresh(request, "AdminZone");	
		}
		if(loginForm.getAname().equals("xx")){
			request.setAttribute("IsAdmin", "用户名存在!");			
		}else{
			request.setAttribute("IsAdmin", "该用户名不存在!");		
		}		
		return new ActionForward("/login.jsp");
	}
12、修改 struts-config.xml 文件的配置

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AjaxAnywhere的类库及其用法 AjaxAnywhere使用一个名为aa.js的Javascript文件来处理客户端的全部Ajax操作,包括初始化XMLHttpRequest、获取表单内容、发送Ajax请求、执行回调函数等。aa.js也是使用AjaxAnywhere之前必须了解的,至少应该知道其经常用到的API。Ajax Anywhere的官方网站提供了相应的Javascript Document,方便快速查找和了解这些API。 1.AjaxAnywhere的初始化 aa.js中定义了一个AjaxAnywhere对象,针对Ajax的各种操作被抽象成AjaxAnywhere对象的方法,通过这些对象方法完成所需的操作。必要的时候,可以重载这些方法,以便满足个性化的需求。在aa.js文件的末端,AjaxAnywhere对象使用默认的构造方法完成对象实例化。 ajaxAnywhere = new AjaxAnywhere(); ajaxAnywhere.bindById(); 所以,所有引用aa.js的页面都可以在Javascript代码段中使用AjaxAnywhere对象的实例ajaxAnywhere。 当AjaxAnywhere初始化的时候,它在默认的构造函数中完成XMLHttpRequest对象的创建,并保存在AjaxAnywhere对象属性req中。AjaxAnywhere对象默认的构造方法如例程11-23所示。 例程11-23 AjaxAnywhere对象的默认构造方法 function AjaxAnywhere() { this.id = AjaxAnywhere.defaultInstanceName;//id,用于生成更新区域的编号等用途 this.formName = null;//页面表单名称 this.notSupported = false;//是否支持Ajax this.delayBeforeContentUpdate = true;//在更新页面内容之前是否延迟 this.delayInMillis = 100;//延迟时间 //初始化XMLHttpRequest对象--req if (window.XMLHttpRequest) { this.req = new XMLHttpRequest(); } else if (window.ActiveXObject) { try { this.req = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { this.req = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e1) { this.notSupported = true; /* XMLHTTPRequest not supported */ } } } //确定浏览器是否支持Ajax if (this.req == null || typeof this.req == "undefined") this.notSupported = true; }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值