您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

JQuery读取显示XML文件

2024/5/10 1:21:07发布11次查看
这次给大家带来jquery读取显示xml文件,jquery读取显示xml文件的注意事项有哪些,下面就是实战案例,一起来看一下。
准备工作
在开始之前我们需要做如下准备工作:
1.创建一个名为demo.html空白html文件;(推荐使用editplus创建)
2.熟悉jquery框架的基本语法;(不熟悉没关系,后面我会注释得很详细)
3.创建一个名为data.xml的xml文件用来存储数据,xml的结构下面会涉及到,你也可以下载我打包好的文件查看;
4.一个loading.gif图片,这个图片用于在将xml读取出来的等待时间里面显示在空白html文档中
正式开始
step 1:首先让我们看看这个data.xml的简单结构,我这里演示的数据是saturn为您推荐的几本书,故为书籍信息,那么xml就包括书籍的名称,缩略图和书籍描述信息;
以下为xml文件代码:
<?xml version="1.0" encoding="utf-8" ?> <books> <book title="藏地密码" imageurl="images/tibet_code.jpg"> <description> 这里是概况 </description> </book> <book title="剑桥雅思6" imageurl="images/ielts.jpg"> <description> 这里是概况 </description> </book> <book title="professional asp.net" imageurl="images/asp.jpg"> <description> 这里是概况= </description> </book> </books>
其次,让我们看看加载在空白html文档里面的javascript代码:
$(document).ready(function() { $.get('mydata.xml', function(d){ $('body').append('<h1> saturn给你推荐几本书: </h1>'); $('body').append('<dl />'); $(d).find('book').each(function(){ var $book = $(this); var title = $book.attr("title"); var description = $book.find('description').text(); var imageurl = $book.attr('imageurl'); var html = '<dt> <img class="bookimage" alt="" src="' + imageurl + '" /> </dt>'; html += '<dd> <span class="loadingpic" alt="loading" />'; html += '<p class="title">' + title + '</p>'; html += '<p> ' + description + '</p>' ; html += '</dd>'; $('dl').append($(html)); $('.loadingpic').fadeout(2000); }); }); });
step 2:这里,我只讲下javascript代码原理与运行流程,不过分讨论语法,如果你对语法有任何疑问,请给我留言或者查看jquery相关文档。
行1:当html文档准备完毕之后(即html和javascript都下载完毕),会自动触发jquery的 $(document).ready方法及里面的过程。显然,这里首先执行的是$.get方法。
行3:$.get的第一个参数是xml文件的相对路径(注意路径要填写正确,这里我们把xml和网页文件放在同一文件夹)。第二个参数是一个callback函数,即回调函数。就是说通过get方法来请求这个xml文件的内容,然后通过这个callback回调函数来操作里面的数据。而callback的参数d表示从xml回调过来的所有数据,有了这个参数d,我们就好进行下面的内容了。
行4:通过javascript在文档的body中动态添加一个标签4a249f0d628e2318394fd9b75b4636b1,这个是页面的总标题,无关紧要;
行5:同样在body中动态添加一个标签5c69336ffbc20d23018e48b396cdd57a,用来作为包含循环下面的内容容器。(行20会用到)
行7:这一行很重要,因为我们已经说过,回调函数的参数d表示从xml回调的所有数据,现在我们就需要对这些数据进行处理(筛选)和格式化;请注意:这里通过搜寻book标签(tag),然后循环执行each后面的函数,直到xml里面数据的条目完全循环完毕;(有点像php里面的foreach函数的功能)
行9:$(this)实际上就创建一个对象,目的是将d的当前一条书籍信息对象实例化,方便进行操作,这就是$book;
行10--行12:分别获取当前对象$book的书籍名称,描述和缩略图;(注意取属性值和取节点值的语法不同)
行14-行18:格式化书籍信息,以便输出;
行20:将格式化后的信息以html输出方式输出到文档中。
行22:为了告诉用户我们当前的信息正在从xml中读取,2000毫秒(2秒)后,图片逐渐消失。
step 3:至此,大功告成。欢迎大家给我留言,共同讨论jquery的开发和你所碰到的问题,请不吝赐教。另外,请将下载后的文件夹放在web环境下运行(iis或虚拟主机),请不要直接点开运行。
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
jquery+ligerui实现文件上传步骤详解
jquery动态加载js文件详解
以上就是jquery读取显示xml文件的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录