需求效果

  • 点击链接。当前页面载入xml文件并展示相应内容
  • 通过搜索框。搜索xml文件内节点数据。展示包括内容的节点数据

功能实现

Demo终于实现效果 http://loadxmldemo.coderfix.cn/

核心代码


String.prototype.replaceAll = function (s1, s2) {
return this.replace(new RegExp(s1, "gm"), s2);
} //查询和标签
function GetXmlByQuery(str) {
$.ajax({
url: "xmls/all.xml",
dataType: 'xml',
type: 'GET',
timeout: 2000,
error: function (xml) {
alert("载入XML 文件出错! ");
},
success: function (xml) {
var infos = "";
var title;
var img;
$(xml).find("page").each(function (i) {
title = $(this).attr("title");
img = $(this).attr("img");
if (str == "") {
str = $("#s").val();
}
if (title.toLowerCase().indexOf(str) >= 0) {
infos += "<li class='article-entry standard'>";
infos += "<h4>" + title + "</h4>";
infos += "<span class='article-meta'>" + $(this).text() + "</span>";
if (img != null) {
infos += "<img src='" + img + "' />";
}
infos += "</li>";
}
});
infos = infos.replaceAll("%t", "<br />");
$(".articles").html(infos);
}
});
} //Id传參,列表类
function GetXmlByType(tid) {
$.ajax({
url: "xmls/" + tid + ".xml",
dataType: 'xml',
type: 'GET',
timeout: 2000,
error: function (xml) {
alert("载入XML 文件出错!");
},
success: function (xml) {
var infos = "";
var type;
var title;
var img;
$(xml).find("page").each(function (i) {
type = $(this).attr("type");
title = $(this).attr("title");
img = $(this).attr("img");
if (type.toLowerCase().indexOf(tid) >= 0) {
infos += "<li class='article-entry standard'>";
infos += "<h4>" + title + "</h4>";
infos += "<span class='article-meta'>" + $(this).text() + "</span>";
if (img != null) {
infos += "<img width='150px' height='auto' src='" + img + "' />";
}
infos += "</li>";
}
});
infos = infos.replaceAll("%t", "<br />");
$(".articles").html(infos);
}
});
}

项目源代码

Github地址 https://github.com/diandianxiyu/loadxmldemo

【JavaScript】JS读取XML文件并进行搜索的更多相关文章

  1. Js读取XML文件为List结构

    习惯了C#的List集合,对于Javascript没有list 极为不舒服,在一个利用Js读取XML文件的Demo中,决定自己构建List对象,将数据存入List. 第一步,Js读取XML文件知识 X ...

  2. IE下JS读取xml文件示例代码

    JS读取xml文件具体步骤为:创建DOM对象.加载xml文件(仅适用于IE)附示例代码,感兴趣的朋友可以参考下,希望对大家有所帮助使用javascript脚本读取xml文件,这里暂只考虑IE浏览器st ...

  3. jQuery、JS读取xml文件里的内容(JS先通过document.implementation.createDocument方法将xml转换成document对象,jQuery将读取到的xml转成table)

    xml文件:test.xml <?xml version="1.0"?> <note> <to>George</to> <fr ...

  4. JS读取XML文件数据并以table显示数据(兼容IE火狐)

    先看xml文件: <?xml version="1.0" standalone="yes"?> <student> <stuinf ...

  5. js 读取xml文件

    读取xml文件 [原创 2007-6-20 17:35:37]     字号:大 中 小 js中读取xml文件,简单的例子: <html><head><script> ...

  6. js读取xml文件

    假设我们现在要读取下面的 info.xml 文件 <?xml version="1.0" encoding="gb2312"?> <root& ...

  7. [HTML]js读取XML文件并解析

    xml文件:test.xml <?xml version="1.0"?> <note> <to>George</to> <fr ...

  8. 使用javascript中读取Xml文件做成的一个二级联动菜单

    [html] view plaincopy <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ...

  9. JavaScript 解析读取XML文档 实例代码(转)

    JavaScript解析读取XML文件,主要就是加载并解析XML文件,然后就可以测试解析的XML文件的内容,打印输出来. 在线演示:http://demo.jb51.net/js/2012/readx ...

随机推荐

  1. CSS绝对定位模拟固定定位

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. 11Java Server Pages 动作

    Java Server Pages 动作 JSP标准动作 分类 JSP标准动作 存取JavaBean相关 <jsp:useBean> <jsp:setProperty> < ...

  3. linux find-在指定目录下查找文件

    推荐:更多Linux 文件查找和比较 命令关注:linux命令大全 find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find ...

  4. java 十三周总结

  5. python list排序(正倒)以及获取重复数据

    mylist = [2,2,2,2,5,5,7,2,2,3,3,3,3] #<class 'list'>: [2, 2, 2, 2, 5, 5, 7, 2, 2, 3, 3, 3, 3] ...

  6. Django 数据库操作之数据库连接

    修改settings.py文件 """ Django settings for db_operation_demo project. Generated by 'djan ...

  7. html to canvas

    html to canvas Screenshots https://html2canvas.hertzen.com/ https://github.com/niklasvh/html2canvas ...

  8. HDU 1210

    感觉就是乱搞找规律 自己写几组数据 本来开始是想着把 n 个数字每次回到原来位置各需要多少次,然后取它们的最小公倍数就好了 但是数据写着写着发现每一个数回到原来位置次数都是一样的,那么就简单了,直接第 ...

  9. noip模拟赛 圆桌游戏

    [问题描述] 有一种圆桌游戏是这样进行的:n个人围着圆桌坐成一圈,按顺时针顺序依次标号为1号至n号.对1<i<n的i来说,i号的左边是i+1号,右边是i-1号.1号的右边是n号,n号的左边 ...

  10. 转载 - JSONObject简介

    出处: http://www.cnblogs.com/java-pan/archive/2012/04/07/JSONObject.html JSONObject简介   本节摘要:之前对JSON做了 ...