DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> JQuery解析HTML、JSON和XML實例詳解
JQuery解析HTML、JSON和XML實例詳解
編輯:JQuery特效代碼     

1、HTML

有的時候會將一段HTML片段保存在HTML文件中,在另外的主頁面直接讀取該HTML文件,然後解析裡面的HTML代碼片段融入到主頁面中。

fragment.html文件,其內容:
. 代碼如下:
<div>hello Jquery</div>

在主頁面
Test.html中解析代碼
. 代碼如下:
$("#a1").click(function(){ 
   $("#div2").load('fragment.html'); 
   return false; 
});[code]

2、JSON
JSON文件是test.json,其內容:
[code]
[{"name":"jim","age":"20"},{"name":"lily","age":"18","hobby":["swim","movie"]}]

在主頁面
Test.html中解析代碼
. 代碼如下:
$("#a2").click(function(){ 
        $.getJSON('test.json',function(data){ 
            var html = '<table>'; 
            $.each(data,function(entryIndex,entry){ 
                html += '<tr><td>'+entry.name+'</td><td>'+entry.age+'</td>'; 
                if(entry.hobby){ 
                    html += '<td>'; 
                    $.each(entry.hobby, function(lineindex,line) { 
                        html += line+","; 
                    }); 
                    html += '</td>'; 
                } 

                html += '</tr>'; 
            }); 
            html += '</table>'; 
            $("#div2").html(html); 
            return false; 
       }); 
    }); 

3、XML
XML文件是test.xml,其內容是:
. 代碼如下:
<?xml version="1.0" encoding="utf-8" ?> 
<root> 
    <book id="1"> 
        <name>深入淺出extjs</name> 
        <author>張三</author> 
        <price>88</price> 
    </book> 
    <book id="2"> 
        <name>鋒利的jQuery</name> 
        <author>李四</author> 
        <price>99</price> 
    </book> 
    <book id="3"> 
        <name>深入淺出flex</name> 
        <author>王五</author> 
        <price>108</price> 
    </book> 
    <book id="4"> 
        <name>java編程思想</name> 
        <author>錢七</author> 
        <price>128</price> 
    </book> 
</root> 

在主頁面
Test.html中解析代碼
. 代碼如下:
$("#a3").click(function(){ 
        $.get('test.xml',function(data){ 
            var s=""; 
            $(data).find('book').each(function(i){ 
                var id=$(this).attr('id'); 
                var name=$(this).children('name').text(); 
                var author=$(this).children('author').text(); 
                var price=$(this).children('price').text(); 
                s+=id+"    "+name+"    "+author+"    "+price+"<br>"; 
            }); 
            $('#div2').html(s); 
        }); 
    }); 

對JQuery解析不同文檔做了一個Demo,Test.html的原碼是
. 代碼如下:
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <script type="text/javascript" src="jquery.js"></script> 
    <script type="text/javascript"> 

 $(function(){ 
    $("#a1").click(function(){ 
       $("#div2").load('fragment.html'); 
       return false; 
    }); 

    $("#a2").click(function(){ 
        $.getJSON('test.json',function(data){ 
            var html = '<table>'; 
            $.each(data,function(entryIndex,entry){ 
                html += '<tr><td>'+entry.name+'</td><td>'+entry.age+'</td>'; 
                if(entry.hobby){ 
                    html += '<td>'; 
                    $.each(entry.hobby, function(lineindex,line) { 
                        html += line+","; 
                    }); 
                    html += '</td>'; 
                } 

                html += '</tr>'; 
            }); 
            html += '</table>'; 
            $("#div2").html(html); 
            return false; 
       }); 
    });$("#a3").click(function(){ 
        $.get('test.xml',function(data){ 
            var s=""; 
            $(data).find('book').each(function(i){ 
                var id=$(this).attr('id'); 
                var name=$(this).children('name').text(); 
                var author=$(this).children('author').text(); 
                var price=$(this).children('price').text(); 
                s+=id+"    "+name+"    "+author+"    "+price+"<br>"; 
            }); 
            $('#div2').html(s); 
        }); 
    }); 
});  

    </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <ul id="div1"> 
        <li><a id="a1" href="#">show html fragment</a></li> 
        <li><a id="a2" href="#">show json</a></li> 
        <li><a id="a3" href="#">show xml</a></li> 
    </ul> 
        <p>Show Content:</p> 
    <div id ="div2"></div> 
    </form> 
    <div> 

</div> 
</body> 
</html> 

利用FireFox浏覽器打開該Test.html文件,效果如下

點第一個超鏈接會在Show Content區域顯示新插入的html片段

點第二個超鏈接,會顯示json數據:

點第三個超鏈接,會顯示xml數據:

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved