JQuery解析XML數據的幾個簡單實例

字號:


    下面小編就為大家?guī)硪黄狫Query解析XML數據的幾個簡單實例。小編覺得挺不錯的,現在分享給大家,也給大家做個參考。
    用JavaScript解析XML數據是常見的編程任務,JavaScript能做的,JQuery當然也能做。下面我們來總結幾個使用JQuery解析XML的例子。
    第一種方案:
    <script type="text/javascript">
    $(document).ready(function() {
        $.ajax({
            url: 'http://www.jb51.net/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://www.jb51.net/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");//讀取節(jié)點屬性
        var dataType = field.find("datatype").text();//讀取子節(jié)點的值
    });
    以上這篇JQuery解析XML數據的幾個簡單實例就是小編分享給大家的全部內容了,希望能給大家一個參考