本文实例总结了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
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我