服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

j2se综合:与你一起讨论ajax进一阶应用

解决的问题:当通过ajax多次提交请求,而服务器端反映比较慢,导致只有最后一个请求被响应的现象。
首先 提供一个简单的ajax应用,包含两个jsp文件,一个提交请求,一个处理请求。
提交请求:ajaxtest.jsp
<%@ page contenttype="text/html; charset=gb2312" %>


<br>ajaxtest<br>

    var count = 0;
    var running = false;
    var http_request;
    function send_request(url) {//初始化、指定处理函数、发送请求的函数
        http_request = false;
        //开始初始化xmlhttprequest对象
        if(window.xmlhttprequest) { //mozilla 浏览器
            http_request = new xmlhttprequest();
            if (http_request.overridemimetype) {//设置mime类别
                http_request.overridemimetype('text/xml');
            }
        }
        else if (window.activexobject) { // ie浏览器
            try {
                http_request = new activexobject("msxml2.xmlhttp");
            } catch (e) {
                try {
                    http_request = new activexobject("microsoft.xmlhttp");
                } catch (e) {}
            }
        }
        if (!http_request) { // 异常,创建对象实例失败
            window.alert("不能创建xmlhttprequest对象实例.");
            return false;
        }
        http_request.onreadystatechange = processrequest;
        // 确定发送请求的方式和url以及是否同步执行下段代码
        http_request.open("get", url, true);
        http_request.send(null);
    }
    // 处理返回信息的函数
    function processrequest() {
        if (http_request.readystate == 4) { // 判断对象状态
            if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
                var rtext = http_request.responsetext;
        document.getelementbyid("refreshtext").innerhtml = rtext + "
"
            + document.getelementbyid("refreshtext").innerhtml;
            } else { //页面不正常
                alert("您所请求的页面有异常。");
            }
        }
    }

    function refreshtable() {
        k = new date();
        send_request('ajaxtestresponse.jsp?count=' + (++count) + '&refreshtime='+k);
    }

    //window.settimeout('refreshtable()',10000);




ajax test









响应请求:ajaxtestresponse.jsp
<%

    string count = request.getparameter("count");
    string ctime = request.getparameter("refreshtime");
    try {
      thread.slee

扫描关注微信公众号