我希望显示一些XML数据,但是遇到了问题。
我想要显示的xml数据如下:
<?xml version="1.0" encoding="utf-8"?>
<rooms>
<not_in_rooms>
</not_in_rooms>
<room name="Room1" description="text" users="0" id="r12" passworded="false" owner_username="admin" owner_siteid="" >
</room>
<room name="Room2" description="text" users="0" id="r13" passworded="false" owner_username="admin" owner_siteid="" >
<user ip="0.0.0.0" name="user1" siteId="" gender="male" cam="0" camIsPrivate="false" mic="0" >
</user>
</room>
我想显示房间名称(即Room1,Room2)和每个房间的用户(即user1)。我在html教程中找到了通用的xml,但是当每个元素中都有调用属性时,它们没有解释该做什么。
答案 0 :(得分:0)
您可以根据自己的需要使用多种方法。可能最简单的是XSLT或使用像PHP这样的服务器端脚本语言解析它。
XSLT可能是最接近“标准”方式的。您只需链接到/嵌入XML文件并向该文件添加一个元素,声明您应该使用XSLT样式表。网上有很多XSLT教程。如果您想知道如何阅读所有属性,请参阅this question。
您还可以使用PHP来解析和输出HTML。这会更复杂,但也更灵活。
答案 1 :(得分:0)
您可以使用纯JavaScript和DOM解析器来解析XML。
假设您将XML作为JavaScript中的变量:
var txt = "<XML></XML>"
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
//get take data..
xmlDoc.getElementsByTagName("Yourtagname")[0]
//Get Attribute Data...
xmlDoc.getElementsByTagName("Yourtagname")[0].getAttribute('YourAttributeInTag')
这是朋友们试用的一个测试小提琴。