如何使用javascript解析xml键名及其值
How to parse xml key name and its value using javascript?
我正在从远程api接收如下示例的xml数据。谁能告诉我如何获得键名及其对应的键值并打印它们?例如,我想打印所有的categoryIcon和category值。
javascript:$.get("http://www.someapisite.com/test.php",
{
dataType: "jsonp"
},
function(data,status){
//here i want to print the key names and its corresponding values
}
xml解析:
<?xml version="1.0" encoding="UTF-8"?>
<dict><key>ItemLists</key>
<array><dict><key>id</key>
<string>1</string>
<key>name</key>
<string>fruits</string>
<key>category</key>
<string>US Fruits</string>
<key>categoryIcon</key>
<string>http://www.somsite.com/categories/1.jpg</string>
<key>country</key>
<string>US</string>
</dict>
<dict><key>id</key>
<string>2</string>
<key>name</key>
<string>Vegetable</string>
<key>category</key>
<string>Eu Vegetable</string>
<key>categoryIcon</key>
<string>http://www.somsite.com/categories/2.jpg</string>
<key>country</key>
<string>EU</string>
</dict>
</array>
</dict>
编辑:对于每一组字典,我想打印一个<tr>
,就像这样:
var div = "<tr id='""+i+"'">'n" +
"<td>"+i+"</td>'n" +
"<td><img src='""+ categoryIcon +"'" height='"42'" width='"42'"></td>'n" +
"<td>'n" +
"<a href='"javascript:doit('id=" + id + "&name=" + name + "&category=" + category + "&categoryIcon=" + categoryIcon + "','"+ country +"')'" onclick='"selectLink(this);'">" + name + "</a><br> 'n" +
"<br></td></tr>'n'n";
$("#myDiv").append(div);
首先您需要使用parseXML()
将字符串解析为XML文档,然后您可以在文档中找到键/值。您应该在array
标签中找到key
标签,并使用.each()
迭代它。另外,key
的值在下一个string
标签中,您可以使用.next()
来选择它。
var xml = $("#xml").html();
$(xml).find("array key").each(function(){
var key = $(this).text();
var value = $(this).next().text();
console.log(key + "=" + value);
});
var xml = $("#xml").html();
$(xml).find("array key").each(function(){
console.log($(this).text() +"="+ $(this).next().text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="xml">
<dict>
<key>ItemLists</key>
<array>
<dict>
<key>id</key>
<string>1</string>
<key>name</key>
<string>fruits</string>
<key>category</key>
<string>US Fruits</string>
<key>categoryIcon</key>
<string>http://www.somsite.com/categories/1.jpg</string>
<key>country</key>
<string>US</string>
</dict>
<dict>
<key>id</key>
<string>2</string>
<key>name</key>
<string>Vegetable</string>
<key>category</key>
<string>Eu Vegetable</string>
<key>categoryIcon</key>
<string>http://www.somsite.com/categories/2.jpg</string>
<key>country</key>
<string>EU</string>
</dict>
</array>
</dict>
</div>
相关文章:
- 如何通过安全的https连接在javascript中使用基于soap xml的Web服务
- 在Javascript中循环使用XML
- 如何使用javascript或jquery mobile从url读取和显示XML文件
- 使用Javascript反向遍历XML
- 如何使用JQUERY解析大型XML文件并将其可视化为HTML格式
- 如何使用 javascript 按列对表进行排序?不能在这里使用 jquery.我正在使用javascript从xml文
- 要使用XML显示的静态数据
- 在 html 中使用 javascript 解析 xml
- 使用jquery动态解析XML文件
- 使用javascript读取本地XML文件并在html页面中显示
- 如何将从XML读取的值存储到本地对象's成员使用.get()函数
- 使用javascript中的php变量创建XML
- 使用AJAX传递的数据编辑XML文件-正在删除XML数据
- 在HTML文档中使用XML文件中的数据
- 搜索XML文件并使用javascript显示结果
- xml在使用SSL https请求时失败
- 在 XML 中使用 HTML 输入值
- 如何编辑或替换xml字符串使用php
- 加载svg文件(xml)并使用javascript提取特定信息
- 如何使Sarissa在解析XML时使用DTD