论坛首页 Web前端技术论坛

运用AJAX实现右下角弹出提示框 示例

浏览 23446 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-08-24  
注意XML格式
<?xml version="1.0" encoding="UTF-8"?>
<messages>
	<message>
		<id>001</id>
		<title>通知你今天来开会</title>
	</message>
</messages>


xmlHttp.responseXML 获取到的XML格式不对就是null
0 请登录后投票
   发表时间:2007-08-24  
ye_jinghua 写道

xmlHttp.responseXML 获取到的XML格式不对就是null

嗯,我有注意了,我是用你给的这个xml啊....我都觉得奇怪,我都怀疑xml格式不对,但是又没发现有什么问题....
0 请登录后投票
   发表时间:2007-08-24  
  
<?xml version="1.0" encoding="gb2312" ?> 
- <NewDateSet>
- <Table>
  <user_id>1</user_id> 
  <user_name>myName</user_name> 
  </Table>
  </NewDateSet>

这是我的xml,用IE打开正常,alert(xmlHttp.responseText)也正常
但alert(xmlHttp.responseXML.documentElement)值为null....
alert(xmlHttp.responseXML.getElementsByTagName("Table").length)值为0
0 请登录后投票
   发表时间:2007-08-24  
用你的XML也可以正常运行
你先不要改下载的文件[只改那请求地址就行了]
0 请登录后投票
   发表时间:2007-08-24  
		try{
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e){
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}

有可能是浏览器问题吧,我试过,我的浏览器是执行xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");的,xmlHttp.status == 200里面的代码没有执行,改成(xmlHttp.status == 0 ||xmlHttp.status == 200)就可以,就是说它的状态从来没有是200...但是这样alert(xmlHttp.responseText)也可以获得xml的内容,就是xmlHttp.responseXML.documentElement的值依旧为空...

PS:你的代码我没有修改的情况下,只修改url为message.xml也不能正确运行,错误为:
行:16
字符:5
代码:0
错误:系统未找到指定的资源。
0 请登录后投票
   发表时间:2007-08-26  
唉,是浏览器的问题了,在firefox中测试得很顺利....
0 请登录后投票
   发表时间:2007-08-26  
唉,是浏览器的问题了,在FireFox中测试得很顺利,但IE不知道为什么不行,不知道代码有什么不同呢...
0 请登录后投票
   发表时间:2007-08-28  
楼上的,FF下有createPopup么??
0 请登录后投票
   发表时间:2007-08-29  
keyboard2000 写道
唉,是浏览器的问题了,在firefox中测试得很顺利....


你的游览器是什么版本的
0 请登录后投票
   发表时间:2007-09-03  
我感觉是因为xml文件的编码,试试统一用"UTF-8",然后.xml文件也要存成UTF-8的格式
keyboard2000 写道
唉,是浏览器的问题了,在FireFox中测试得很顺利,但IE不知道为什么不行,不知道代码有什么不同呢...
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics