ajax做的无刷新聊天遇到的一个问题,召唤各位朋友帮忙看看,在线结帖
用XMLHTTP做了一个拖拽的无刷新聊天,基本功能已经晚上,但是遇到一个很怪的问题,聊天语句经常会丢失,于是做了跟踪调查.发现一个问题,但是以小弟的经验,不知道该怎么解决,特求助,问题如下:   
 聊天信息可保证有接收到,用alert弹出来该信息的话,句句都有,但是弹出的同时要写到窗体上的容器上,却有时候写不进去.我想了很久,会不会是容器有问题,就换了容器,而且同时在页面放了几种容器来测试,结果问题还是一样.   
 ///拖拽代码 
 function   GetResult()//ajax无刷新实现 
 { 
 var   oBao   =   new   ActiveXObject( "Microsoft.XMLHTTP ");    
 oBao.open( "POST ", "GetMsg.aspx?id= <%=RoomID%>  ",false); 
 oBao.send();      
 var   strResult   =   oBao.responseText; 
 var   arrResult   =   strResult.split( "‖ ");			      
 //alert( '接到数据 '); 
 for(var   i=0;i <arrResult.length-1;i++) 
 { 
                            //用来跟踪的一个TEXT,也是一样有时候写不进去 
 	Form1.Temp.value   =    " ";// 
 	Form1.Temp.value   =   arrResult[i];   
 	arrTmp   =   arrResult[i].split( "| ");    
                            //ChatRun是执行信息输出到页面的function,有时候会写不进去. 
 	ChatRun(arrTmp[0],arrTmp[1],arrTmp[2],arrTmp[3],arrTmp[4],arrTmp[5],arrTmp[6])   
                            //将整个句子弹出,每句都有 
 	alert(arrResult[i]); 
 } 
 setTimeout( "GetResult() ",1000); 
 }   
 ///////////////////ChatRun   
 function   ChatRun(username,post_obj,saystr,sl,addsign,sayscolor,number) 
 { 
 	var   oChatRoom   =   document.getElementById( "ChatRoom "); 
 	var   msg   =    " "; 
 	var   gg   =    " ";  	    
 	msg   =    " <span   class=chat4>  <a   href=javascript:seluser( ' "+username+ " ');>  "+username+ " </a> 对 <a   href=javascript:seluser( ' "+post_obj+ " ');>  "+post_obj+ " </a> 说: <font   color= "+sayscolor+ ">  "+saystr+ " </font>  </span>  <br>  ";  	    
 	oChatRoom.innerHTML   +=   msg; 
 	oChatRoom.scrollTop   =   999999;	 
 }
------解决方案--------------------function GetResult()//ajax无刷新实现 
 { 
 var oBao = new ActiveXObject( "Microsoft.XMLHTTP ");  
 oBao.open( "POST ", "GetMsg.aspx?id= <%=RoomID%>  ",false);  
 oBao.onreadystatechange=function() 
   { 
      if(oBao.readyState==4) 
        { 
         var strResult = oBao.responseText; 
         var arrResult = strResult.split( "‖ ");			    
         for(var i=0;i <arrResult.length-1;i++) 
         { 
 	Form1.Temp.value =  " ";// 
 	Form1.Temp.value = arrResult[i]; 
 	arrTmp = arrResult[i].split( "| ");  
          alert(arrTmp.length); 
 	ChatRun(arrTmp[0],arrTmp[1],arrTmp[2],arrTmp[3],arrTmp[4],arrTmp[5],arrTmp[6]) 
         } 
         setTimeout( "GetResult() ",1000); 
        } 
    } 
 oBao.send(null);   
------解决方案--------------------帮你UP下   
 你最好看下你往容器里面写的信息是不是闭和的HTML,就不帮你细看了