js读取xml
XML代码段<?xmlversion="1.0"encoding="utf-8"?><user><name>1111111</name></user>有3个XML文件分别...
XML代码段 <?xml version="1.0" encoding="utf-8"?> <user> <name>1111111</name> </user> 有3个XML文件分别是1.xml 2.xml 3.xml 有1个HTML 是user.html 在user.html里设置一个JS变量ID (var id;) 当user.html的JS变量ID=1的时候读取1.xml 当user.html的JS变量ID=2的时候读取2.xml 当user.html的JS变量ID=3的时候读取3.xml 注:是本地XML
展开
1个回答
展开全部
楼主是要根据ID值的不同来读取XML文件。那么有2个问题要解决。 第一ID值从那来? 第二XML文件的格式是否统一? ------------------------------------------------------------------------- 如果ID的值是由其他页面传递,那么获取ID之后传递给方法。 ------------------------------------------------------------------------- <HTML> <head> <title>Test</title> </head> <body> <div id="view"> <!--这里的div是显示从XML文件读出的数据--> </div> <script language="javascript"> function LoadingXml(id){ var xmlDoc; if (window.ActiveXObject) { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); } else if (document.implementation.createDocument) { xmlDoc=document.implementation.createDocument("","",null); } else { alert('Your browser cannot handle this script'); } xmlDoc.async=false; switch (id) { case 1: xmlDoc.load("1.xml"); break; case 2: xmlDoc.load("2.xml"); break case 3: xmlDoc.load("3.xml"); break } var x=xmlDoc.getElementsByTagName("user"); var divList=document.getElementById("view"); var Temp="<table border='1' cellspacing='0' cellpadding='0' align='center' width='400'>"; Temp+="<tr>"; Temp+="<td>名字</td>"; Temp+="</tr>"; for(var i=0;i<x.length;i++) { Temp+="<tr>"; Temp+="<td>"+x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue+"</td>"; Temp+="</tr>"; } Temp+="</table>"; divList.innerHTML=Temp; } </script> </body> </HTML> 补充: 如果需要测试效果,请在</script> 标签 之前加上window.onload=LoadingXml(1);小括号中的1代表id的值。也表示将读取那一个 xml文件 。。。(以上代码均以楼主提供的xml文档格式 范例 所写。) 追问: 可能是我的问题问的过于简单我详细一点说吧。 是这样XML文件里保存的是网站用户的信息,XML文件的名称所对应的是用户的ID(网站有个用户他的身份ID是10000那么在根目录里就有一个10000.XML的文件),当身份ID为10000的用户成功登陆后网站的动态 服务器 脚本语言 就会生成一个Cookie保存用户的ID(用JS读取Cookie以解决)。当用户查看user. html文件 的时候就会看到自己的个人信息(这些一般都是用动态服务器脚本完成的但我想用静态完成这样可以节省服务器的负担)你说的ID也可以是从地址栏里来的(user.html?id=10000) 注:XML文件的名称不是固定的 还有我想问一下这里提示的是什么(alert('Your browser cannot handle this script'); )它是以什么条件下提示的。 回答: 名称不固定。但是你的客户ID总是固定的。。只是多加一个参数而已。。。 这提示是在 浏览器 不支持JS的创建XML读取对象的时候弹出的,对于目前大多IE,FF,OP,CH,TT,360的浏览器用户来说一般不是问题,除非浏览器坏掉了。。。 从地址来,那么你和不直接在读cookie的时候就想办法把XML文件名以及用户ID就传递给user.html这个页面呢?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询