JQuery解析HTML、JSON和XML实例详解


Posted in Javascript onMarch 29, 2014

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文件,效果如下

JQuery解析HTML、JSON和XML实例详解

点第一个超链接会在Show Content区域显示新插入的html片段

JQuery解析HTML、JSON和XML实例详解

点第二个超链接,会显示json数据:

JQuery解析HTML、JSON和XML实例详解

点第三个超链接,会显示xml数据:

JQuery解析HTML、JSON和XML实例详解

Javascript 相关文章推荐
利用javascript移动div层-javascript 拖动层
Mar 22 Javascript
jQuery 连续列表实现代码
Dec 21 Javascript
JavaScript创建类/对象的几种方式概述及实例
May 06 Javascript
jQuery动态添加删除select项(实现代码)
Sep 03 Javascript
jQuery EasyUI datagrid实现本地分页的方法
Feb 13 Javascript
JS获取一个未知DIV高度的方法
Aug 09 Javascript
代码整洁之道(重构)
Oct 25 Javascript
30分钟精通React今年最劲爆的新特性——React Hooks
Mar 11 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
Feb 05 Javascript
浅谈实现在线预览PDF的几种解决办法
Aug 10 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
Sep 11 Javascript
解析原生JS getComputedStyle
May 25 Javascript
JavaScript中使用ActiveXObject操作本地文件夹的方法
Mar 28 #Javascript
javascript修改IMG标签的src问题
Mar 28 #Javascript
JS将光标聚焦在文本最后的实现代码
Mar 28 #Javascript
JS通过分析userAgent属性来判断浏览器的类型及版本
Mar 28 #Javascript
JavaScript调用ajax获取文本文件内容实现代码
Mar 28 #Javascript
js如何调用qq互联api实现第三方登录
Mar 28 #Javascript
jQuery的3种请求方式$.post,$.get,$.getJSON
Mar 28 #Javascript
You might like
PHP与已存在的Java应用程序集成
2006/10/09 PHP
PHP 9 大缓存技术总结
2015/09/17 PHP
PHP基于反射机制实现插件的可插拔设计详解
2016/11/10 PHP
javascript中动态加载js文件多种解决办法总结
2013/11/15 Javascript
分享Javascript中最常用的55个经典小技巧
2013/11/29 Javascript
js实现仿京东2级菜单效果(带延时功能)
2015/08/27 Javascript
JS实现Fisheye效果动感放大菜单代码
2015/10/21 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
2016/04/11 Javascript
微信小程序 封装http请求实例详解
2017/01/16 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
Python 第一步 hello world
2009/09/25 Python
python-opencv颜色提取分割方法
2018/12/08 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
详解python多线程之间的同步(一)
2019/04/03 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
python实现五子棋程序
2020/04/24 Python
python opencv实现简易画图板
2020/08/27 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
详解HTML5中的标签
2015/06/19 HTML / CSS
英国Office鞋店德国网站:在线购买鞋子、靴子和运动鞋
2018/12/19 全球购物
Senreve官网:美国旧金山的奢侈手袋品牌
2019/03/21 全球购物
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
武汉某公司的C#笔试题面试题
2015/12/25 面试题
一年级家长会邀请函
2014/01/25 职场文书
自荐信格式简述
2014/01/25 职场文书
村党支部对照检查材料思想汇报
2014/09/28 职场文书
2014大四本科生自我鉴定总结
2014/10/04 职场文书
2014年关工委工作总结
2014/11/17 职场文书
2015年宣传部部长竞选演讲稿
2014/11/28 职场文书
2015年生活老师工作总结
2015/05/27 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
nginx 配置指令之location使用详解
2022/05/25 Servers
mysql幻读详解实例以及解决办法
2022/06/16 MySQL