跪求ajax问题

php中文网
发布: 2016-06-23 13:43:35
原创
1097人浏览过

<!DOCUTYPE html><html>	<head>		<title>聊天窗口</title>		<meta http-equiv="Content-type" content="text/html; charset=UTF-8">	</head>	<script type="text/javascript">	 window.resizeTo(580,650);	 window.setInterval("getMessage()", 3000);	 	 function getXmlHttpObject(){		var xmlHttpRequest;		//不同的浏览器获取对象xmlhttprequest对象方法不一样		if(window.ActiveXObject){			xmlHttpRequest =new ActiveXObject("Microsoft.XMLHTTP");		}else{			xmlHttpRequest =new XMLHttpRequest();		}		return xmlHttpRequest;	}	function getMessage()	{		var myXmlHttpRequest = getXmlHttpObject();	 	if(myXmlHttpRequest)	 	{	 		var url = "getMessage.php";	 		var data = "getter=<?php @session_start(); echo $_SESSION['username'];?>&sender=<?php echo $_GET['username'];?>";	 		myXmlHttpRequest.open("post",url,true);	 		myXmlHttpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");	 		myXmlHttpRequest.onreadystatechange=function()	 		{		 		if(myXmlHttpRequest.readyState==4)		 		{		 			if(myXmlHttpRequest.status==200)		 			{		 				//接收		 				var mes=myXmlHttpRequest.responseXML;		 						 				window.alert(mes);  //这里打印出来老是为null		 			}		 		}	 		}	 		myXmlHttpRequest.send(data);	 	}	}	 function sendMessage()	 {	 	var myXmlHttpRequest = getXmlHttpObject();	 	if(myXmlHttpRequest)	 	{	 		var url = "sendMessage.php";	 		var data = "con=" + $('con').value +"&getter=<?php echo $_GET['username'];?>"+"&sender=<?php @session_start(); echo $_SESSION['username'];?>";		 	myXmlHttpRequest.open("post",url,true);		 	myXmlHttpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");		 	myXmlHttpRequest.onreadystatechange=function()		 	{		 		if(myXmlHttpRequest.readyState==4)		 		{		 			if(myXmlHttpRequest.status==200)		 			{		 			}		 		}		 	}		 	myXmlHttpRequest.send(data);	 	}		 }	 function $(id)	 {		return document.getElementById(id);	 }	</script>	<body>		<center>			<h2><span style="color:red;"><?php @session_start(); echo $_SESSION['username'];?></span>跟<span style="color:red;"><?php echo $_GET['username'];?></span>聊天</h2>			<textarea name="context" rows="20" cols="70"></textarea><br/>			<input style="width:300px" type="text" name="sendcontext" id="con">			<input type="button" name="send" onclick="sendMessage();" value="发送">		</center>	</body></html>
登录后复制

上面的getMessage()函数是获取ajax查找出来的数据,getMessage()函数里面的.onreadystatechange指定的回调函数中window.alert(mes);打印出来老是为空,但是我ajax请求的getMessage页面有返回数据啊,下面是ajax请求getMessage的代码
<?php	include "MessageServer.class.php";	@header( 'Content-Type:text/xml;charset=utf-8'); 	@header("Cache-Control: no-cache");	$getter = $_POST['getter'];	$sender = $_POST['sender'];	//调用MessageSerive获取信息	$messageServer = new MessageServer();	$messList = $messageServer->getMessage($getter, $sender);	echo $messList;	?>
登录后复制

echo $messLis t是有数据输出的,输出的是

AI建筑知识问答
AI建筑知识问答

用人工智能ChatGPT帮你解答所有建筑问题

AI建筑知识问答 22
查看详情 AI建筑知识问答


回复讨论(解决方案)

                 //接收
                 var mes=myXmlHttpRequest.responseXML;
if(mes.xml == '') {
alert(myXmlHttpRequest.responseText);
return;
}
               window.alert(mes);  //这里打印出来老是为null

是数据流,你没有定义输入的内容格式 ,可以是json或数据 

 if(myXmlHttpRequest.status==200) {
if(myXmlHttpRequest.recvType=="XML")
     echo  myXmlHttpRequest.responseXML;
 }

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号