cyoeki 2016-09-22 05:26 采纳率: 100%
浏览 1611
已采纳

ajax的xmlhttp.readystate一直等于2

 window.onload = function(){
        var xmlHttp = createXMLHttpRequest();
        xmlHttp.open("GET","<c:url value='/ProvinceServlet'/>",true);
        xmlHttp.send(null);
        xmlHttp.onreadystatechange = function(){
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                var text = xmlHttp.responseText;
                var proArray = eval("("+text+")");
                //document.write(xmlHttp.readyState);
                //document.write(xmlHttp.status == 200);
                for(var i=0;i<proArray.length;i++){
                    var pro = proArray[i];
                    var option = document.createElement("option");
                    option.value = pro.pid;
                    var node = document.createTextNode(pro.name);
                    option.appendChild(node);
                    document.getElementById("p").appendChild(option);
                }
            }else {
                document.write(xmlHttp.readyState==4);
                document.write(xmlHttp.status == 200);
            }
        };
    };

xmlHttp.status == 200 输出是true,但是xmlHttp.readyState==4输出是false。

以下是servlet的代码:

 public class ProvinceServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        Dao dao = new Dao();
        List<Province> listProvinces = dao.findAllProvince();
        String jsonProvince = JSONArray.fromObject(listProvinces).toString();
        response.getWriter().print(jsonProvince);
    }

}
  • 写回答

5条回答

  • Go 旅城通票 2016-09-22 05:44
    关注

    应该是ie下缓存了,加时间戳防止缓存

      xmlHttp.open("GET","<c:url value='/ProvinceServlet'/>?_"+new Date().getTime(),true);
    

    ajax状态

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题