本文实例总结了JQuery解析XML的方法。分享给大家供大家参考,具体如下:
用JavaScript解析XML数据是常见的编程任务,JavaScript能做的,JQuery当然也能做。下面我们来总结几个使用JQuery解析XML的例子。
第一种方案:
<script type=\"text/javascript\">
$(document).ready(function() {
$.ajax({
url: \'http://localhost/cgi/test.xml\',
dataType: \'xml\',
success: function(data){
//console.log(data);
$(data).find(\"channel\").find(\"item\").each(function(index, ele) {
var titles = $(ele).find(\"title\").text();
var links = $(ele).find(\"link\").text();
console.log(titles+\'-----\');
$(\"#noticecon\").find(\'ol\').append(\'<li><a href=\"\'+links+\'\">\'+titles+\'</a></li>\');
});
}
});
})
</script>
<div id=\"noticecon\">
<ol>
</ol>
</div>
第二种方案:
<script type=\"text/javascript\">
$.get(\"http://localhost/cgi/test.xml\", function(data){
$(data).find(\'channel\').find(\'item\').each(function(index, ele){
var titles = $(ele).find(\'title\').text();
var links = $(ele).find(\'link\').text();
$(\"#noticecon\").find(\'ol\').append(\'<li><a href=\"\'+links+\'\">\'+titles+\'</a></li>\');
})
});
</script>
<div id=\"noticecon\">
<ol>
</ol>
</div>
一般步骤如下:
1. 读取xml文件
$.get(\"xmlfile.xml\",function(xml){
//xml即为可以读取使用的内容,具体读取见第2点
});
2. 读取xml内容
如果读取的xml是来于xml文件,这结合上面的那点,处理如下:
$.get(\"xmlfile.xml\",function(xml){
$(xml).find(\"item\").length;
});
如果读取的是xml字符串,则要注意一点,xml字符串的必然被\"<xml>\"和\"</xml>\"包围才可以被解析
$(\"<xml><root><item></item></root></xml>\").find(\"item\").length;
解析xml内容:
示例xml:
<?xml version=\"1.0\" encoding=\"utf-8\" ?> <fields> <field Name=\"Name1\"> <fieldname>dsname</fieldname> <datatype>字符</datatype> </field> <field Name=\"Name2\"> <fieldname>dstype</fieldname> <datatype>字符</datatype> </field> </fields>
以下是解析示例代码:
$(xml).find(\"field\").each(function() {
var field = $(this);
var fName = field.attr(\"Name\");//读取节点属性
var dataType = field.find(\"datatype\").text();//读取子节点的值
});
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery操作xml技巧总结》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
本文地址:https://www.stayed.cn/item/24473
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我