使用javascript或jquery从外部xml文件加载数据
嗨 我有一个如下所示的xml文件:使用javascript或jquery从外部xml文件加载数据,javascript,xml,Javascript,Xml,嗨 我有一个如下所示的xml文件: <?xml version="1.0"?> <sendSound enable="true" autoPlay="true"> <item name="Gasp for surprise" src="flashsound/gasp.mp3"></item> <item name="Giggle" src="flashsound/hehe.mp3"></item> &
<?xml version="1.0"?>
<sendSound enable="true" autoPlay="true">
<item name="Gasp for surprise" src="flashsound/gasp.mp3"></item>
<item name="Giggle" src="flashsound/hehe.mp3"></item>
<item name="Say hello" src="flashsound/hello.mp3"></item>
</sendSound>
如何使用javascript或jquery实现这一点?这是我目前的代码:
var users = xml.getElementsByTagName("sendSound");
for(var i = 0; i < users.length; i++) {
var user = users[i];
var names = user.getElementsByTagName("item");
for(var j = 0; j < names.length; j++) {
console.log(names[j].getAttribute("name"));
}
}
var users=xml.getElementsByTagName(“sendSound”);
对于(var i=0;i
谢谢。这是jQuery和一点香草的搭配
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery.parseXML demo</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<script>
$.get( "./file.xml", function( data ) {
var xml = new XMLSerializer().serializeToString(data);
var xmlDoc = $.parseXML( xml );
var xml = $( xmlDoc );
var users = xml.find( "sendSound" );
for(var i = 0; i < users.length; i++) {
var user = users[i];
var names = user.getElementsByTagName("item");
for(var j = 0; j < names.length; j++) {
console.log(names[j].getAttribute("name"));
}
}
});
</body>
</html>
jQuery.parseXML演示
$.get(“./file.xml”,函数(数据){
var xml=new XMLSerializer().serializeToString(数据);
var xmlDoc=$.parseXML(xml);
var xml=$(xmlDoc);
var users=xml.find(“sendSound”);
对于(var i=0;i
您可以进行XMLHttpRequest
解析,请看这里:您介意再详细说明一点吗?现在正在准备答案。希望这会有所帮助,如果没有,我已经失败的堆栈溢出神。我删除我的答案,我显然不能正确编码时,我没有办法调试该死的东西。gl是我的朋友,但这不是为了从外部文件获取数据。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery.parseXML demo</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<script>
$.get( "./file.xml", function( data ) {
var xml = new XMLSerializer().serializeToString(data);
var xmlDoc = $.parseXML( xml );
var xml = $( xmlDoc );
var users = xml.find( "sendSound" );
for(var i = 0; i < users.length; i++) {
var user = users[i];
var names = user.getElementsByTagName("item");
for(var j = 0; j < names.length; j++) {
console.log(names[j].getAttribute("name"));
}
}
});
</body>
</html>