日期:2014-05-17  浏览次数:20653 次

ajax提交之后 action返回值的问题
JScript code


var xmlHttpRequest;// 创建xmlhttpRequest对象
function createXmlHttpRequest(){
    if(window.ActiveXObject){
        return new ActiveXObject("Microsoft.XMLHTTP");
     }else if(window.XMLHttpRequest){
         return new XMLHttpRequest();
      }
}
    
function ajaxEnd(){
    alert("re" + xmlHttpRequest.readyState);
    if(xmlHttpRequest.readyState == 4){
        alert("st" + xmlHttpRequest.status);
        if(xmlHttpRequest.status == 200){
             //这里怎么输出
        }
     }
}

function doAjax2(){
    alert("fdas");
    xmlHttpRequest = createXmlHttpRequest();
    // 设置url请求地址
    // 1. 创建XMLHttpRequest组件
    var url = "chart.do?id="+Math.random();
    // 1. 创建XMLHttpRequest组件
    xmlHttpRequest = createXmlHttpRequest();
    // 2. 设置回调函数
    xmlHttpRequest.onreadystatechange = haoLeJiaoWo; 
    // 3. 初始化XMLHttpRequest组件
    xmlHttpRequest.open("GET",url,true);
    // 4. 发送请求
    xmlHttpRequest.send(null);
}    


在action里面怎么写才能在ajaxEnd里面实现 我想传进来的是List类型 或者是字符串类型

------解决方案--------------------
action里面用可以调这个方法 msg是要返回到界面的字符串
Java code

 public void outJson(String msg){
            HttpServletResponse response = ServletActionContext.getResponse();
            response.setCharacterEncoding("UTF-8");
            try {
                PrintWriter out = response.getWriter();
                out.print(msg);
                
            } catch (IOException e) {
                e.printStackTrace();
            }
    }

------解决方案--------------------
为什么不用Jquery?你这种写法是太古老还是太高端,我看不懂……
------解决方案--------------------
探讨

为什么不用Jquery?你这种写法是太古老还是太高端,我看不懂……

------解决方案--------------------
一楼正解~~