ajax simple use

JS脚本:

Js代码 复制代码
  1.  //页面调用方法   
  2. function getInfo(obj){   
  3.     var ajax=getAjaxObject();   
  4.     url="ajaxAction.do?method=ajaxCheck";   
  5.     ajax.onreadystatechange =function(){   
  6.         var buffer="";   
  7.         if (ajax.readyState == 4&&ajax.status == 200){   
  8.             buffer=ajax.responseText;   
  9.             //*回调调用方法   
  10.             ajaxCallback(buffer);   
  11.         }      
  12.     }   
  13.     ajax.open("POST",url);   
  14.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");   
  15.     ajax.send("para="+obj);   
  16. }   
  17. //*get Ajax Object   
  18. function getAjaxObject(){   
  19.     if (window.ActiveXObject) {    
  20.         try{           
  21.             ajax = new ActiveXObject("Microsoft.XMLHTTP");             
  22.         }catch(e){         
  23.             alert("创建Microsoft.XMLHTTP对象失败,AJAX不能正常运行.请检查您的浏览器设置.");   
  24.         }          
  25.     } else {       
  26.         if (window.XMLHttpRequest) {               
  27.             try{   
  28.                 ajax = new XMLHttpRequest();                   
  29.             }catch(e){             
  30.                 alert("创建XMLHttpRequest对象失败,AJAX不能正常运行.请检查您的浏览器设置.");   
  31.             }              
  32.         }   
  33.     }          
  34.     return ajax;   
  35. }  
 //页面调用方法
function getInfo(obj){
	var ajax=getAjaxObject();
	url="ajaxAction.do?method=ajaxCheck";
	ajax.onreadystatechange =function(){
		var buffer="";
		if (ajax.readyState == 4&&ajax.status == 200){
			buffer=ajax.responseText;
			//*回调调用方法
			ajaxCallback(buffer);
		}	
	}
	ajax.open("POST",url);
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
	ajax.send("para="+obj);
}
//*get Ajax Object
function getAjaxObject(){
	if (window.ActiveXObject) {	
		try{		
			ajax = new ActiveXObject("Microsoft.XMLHTTP");			
		}catch(e){		
			alert("创建Microsoft.XMLHTTP对象失败,AJAX不能正常运行.请检查您的浏览器设置.");
		}		
	} else {	
		if (window.XMLHttpRequest) {			
			try{
				ajax = new XMLHttpRequest();				
			}catch(e){			
				alert("创建XMLHttpRequest对象失败,AJAX不能正常运行.请检查您的浏览器设置.");
			}			
		}
	}		
	return ajax;
}

 struts1.x action:

Java代码 复制代码
  1. public ActionForward ajaxCheck(ActionMapping mapping, ActionForm form,   
  2.         HttpServletRequest request, HttpServletResponse response){    
  3.     PrintWriter writer;   
  4.     response.setContentType("text/plain;charset=GBK");   
  5.     response.setHeader("Pragma","No-Cache");   
  6.     response.setHeader("Cache-Control","No-Cache");   
  7.     response.setDateHeader("Expires"0);   
  8.     boolean enable=false;   
  9.     try{   
  10.         writer=response.getWriter();   
  11.         AjaxService ajax=new AjaxService ();   
  12.         String para=request.getParameter("para");   
  13.         enable = ajax.checkSomething(para);   
  14.     } catch (Exception e) {   
  15.                                                log.error(e.getMessage());   
  16.         return mapping.findForward("exception");   
  17.     }   
  18.     writer.print(enable);   
  19.     writer.close();   
  20.     return null;   
  21. }  
	public ActionForward ajaxCheck(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){ 
		PrintWriter writer;
		response.setContentType("text/plain;charset=GBK");
		response.setHeader("Pragma","No-Cache");
		response.setHeader("Cache-Control","No-Cache");
		response.setDateHeader("Expires", 0);
		boolean enable=false;
		try{
			writer=response.getWriter();
			AjaxService ajax=new AjaxService ();
			String para=request.getParameter("para");
			enable = ajax.checkSomething(para);
		} catch (Exception e) {
                                                log.error(e.getMessage());
			return mapping.findForward("exception");
		}
		writer.print(enable);
		writer.close();
		return null;
	}

 备注:

       如果需要向页面返回一个JS对象,可以在java中拼装一个对象字符串({name:'jack',sex:'m'}),在前台得到这个字符串后将其转换成一个JS对象(var obj=null;  eval("obj="+outputString);  return obj;)。

你可能感兴趣的:(Ajax,cache,浏览器,Microsoft,脚本)