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 相关文章推荐
js字符串转换成数字与数字转换成字符串的实现方法
Jan 08 Javascript
javascript用函数实现对象的方法
May 14 Javascript
使用canvas实现仿新浪微博头像截取上传功能
Sep 02 Javascript
基于JavaScript实现 网页切出 网站title变化代码
Apr 03 Javascript
原生js实现放大镜特效
Mar 08 Javascript
JavaScript函数柯里化原理与用法分析
Mar 31 Javascript
JS实现图片点击后出现模态框效果
May 03 Javascript
Angular 4.X开发实践中的踩坑小结
Jul 04 Javascript
vue-cli实现多页面多路由的示例代码
Jan 30 Javascript
Mac下安装vue
Apr 11 Javascript
js实现弹窗效果
Aug 09 Javascript
vue 递归组件的简单使用示例
Jan 14 Vue.js
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.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
PHP 动态生成静态HTML页面示例代码
2014/01/15 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
yii2 在控制器中验证请求参数的使用方法
2019/06/19 PHP
JavaScript入门教程(3) js面向对象
2009/01/31 Javascript
jquery动画4.升级版遮罩效果的图片走廊--带自动运行效果
2012/08/24 Javascript
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
2014/05/11 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
解决jQuery使用JSONP时产生的错误
2015/12/02 Javascript
JavaScript高级程序设计(第三版)学习笔记6、7章
2016/03/11 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
2016/07/26 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
vue自定义指令实现v-tap插件
2016/11/03 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
使用JavaScript实现alert的实例代码
2017/07/06 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
laypage+SpringMVC实现后端分页
2019/07/27 Javascript
JavaScript命令模式原理与用法实例详解
2020/03/10 Javascript
Python3实现简单可学习的手写体识别(实例讲解)
2017/10/21 Python
Python requests发送post请求的一些疑点
2018/05/20 Python
基于MTCNN/TensorFlow实现人脸检测
2018/05/24 Python
python3 爬取图片的实例代码
2018/11/06 Python
python3安装speech语音模块的方法
2018/12/24 Python
python opencv摄像头的简单应用
2019/06/06 Python
python画双y轴图像的示例代码
2019/07/07 Python
django框架创建应用操作示例
2019/09/26 Python
如何用Python绘制3D柱形图
2020/09/16 Python
硕士研究生自我鉴定
2013/11/08 职场文书
走近毛泽东观后感
2015/06/04 职场文书
国庆节主题班会
2015/08/15 职场文书
工作简历的自我评价
2019/05/16 职场文书
html中显示特殊符号(附带特殊字符对应表)
2021/06/21 HTML / CSS