当前位置:编程学习 > JAVA >>

这个错误实在找不出来了 求大神

错误如图


源代码如下
<%@ page contentType="text/html;charset=GB2312" import="java.sql.*" errorPage="" %>
<html>
  <head>
    <title>聊天室</title>
    <script type="text/javascript">
      var xmlHttp;
      function createXMLHttpRequest(){
if(window.ActiveXObject){
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
      else 
          if(window.XMLHttpRequest){
    xmlHttp=new XMLHttpRequest();
    }
}
      function sendMessage(){
var msg=document.getElementById("text").value;
    //使用者只是随意单机【发送】按钮,但文本框没有文字
if(msg==""){
  refreshMessage();
  return;
  }
var url="in.jsp";
        //发送信息
     var param="msg="+msg;
//alert(param+""+url);
     //Ajax请求
   ajaxRequest(param,url);
//清空文本框
  document.getElementById("text").value="";
}
      //定时查询用这个
      function queryMessage(){
var param="task=query";
var url="cha.jsp";
ajaxRequest(param.url);
}
      function ajaxRequest(param,url){
createXMLHttpRequest();
xmlHttp.onreadystatechange=refreshMessage;
xmlHttp.open("POST",url);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
xmlHttp.send(param);
}
      function refreshMessage(){
if(xmlHttp.readyState==4){
  var table_body=document.getElementById("dynamicUpdateArea");  //处理显示信息的表格区域
  var length=table_body.childNodes.length;
  var i;
  for(i=0;i<length;i++){
    //先移除原有的列(row)
    table_body.removeChild(table_body.childNodes[0]);
            }
     //处理返回信息
  var messages=xmlHttp.responseXML.getElementsByTagName("<message>");
  length=massages.length;
  for(i=length-1;i>=0;i--){
    var message=messages[i].firstChild.data;
    //表格中新增一列来排列信息
    var row=createRow(message);
    table_body.appendChild(row);
    }
    //2秒后会在查询一下有无新信息
  setTimeout(queryMessage,2000);
  }
}
      function createRow(message){
var row=document.createElement("try");
var cell=document.createElement("td");
var cell_data=document.createTextNode(message);
cell.appendChild(cell_data);
row.appendChild(cell);
return row;
}
    </script>
  </head>
  <body>
  <%
    String id=(String)session.getAttribute("ID");
    String name=(String)session.getAttribute("name");
    //out.print(name+"用户,欢迎光临惠通聊天室")
  %>
  <a href="liao.jsp">查看个人聊天记录</a>    <a href="Del.jsp">删除言论</a>
  <p>聊天室信息:</p>
  <table border=1 width=58%><tr bodercolor=yellow><td>
  <p>聊天室信息:</p>
  <table align="left">
    <tbody id="dynamicUpdateArea"></tbody>
  </table>
  </td>
  </tr>
  <tr>
  <td>
    <p>输入信息:
      <input id="text"/>
      <input type="button" value="发送" onclick="sendMessage()"/>
    </p>
  </td></tr>
  </table>
  </body>
</html>


真的找不出来
哪位高手帮帮菜鸟
谢谢了

--------------------编程问答-------------------- 你先看下你的ajax请求能不到到后台,然后能不能回调到 refreshMessage这个方法中吧,感觉你上面红色的报错是插件的误报 --------------------编程问答--------------------
引用楼主  的回复:
  function createXMLHttpRequest(){
if(window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
  else 
  if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}
}

xmlHttp变量未成功初始化。
将if(window.XMLHttpRequest)去掉试试看。
还有,你要确保createXMLHttpRequest调用过。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,