jquery或js读取xml文件 50
各位大拿好!小弟想用js或者jQuery读取xml文件,但是试了很多种网上说的,最好的一个情况是在IE下可以运行,但是在360浏览器上就不行了,xml数据没有读取到,各位...
各位大拿好!小弟想用js或者jQuery读取xml文件,但是试了很多种网上说的,最好的一个情况是在IE下可以运行,但是在360浏览器上就不行了,xml数据没有读取到,各位谁有招麻烦给我说下,因为已经试了很多版本,头很疼了,请直接给我三个文件的内容,js、html、xml,让我可以直接复制就能运行的,万分感谢啊!!如果可以达到目的,还会加分,在IE、360等各个浏览器上都可以支持的!!
补充下,只要是读取本地xml文件就行 展开
补充下,只要是读取本地xml文件就行 展开
展开全部
<?xml version="1.0" encoding="utf-8"?><root> <keys name="食品安全法" /> <keys name="中国人" /> <keys name="《c++》" /> <keys name="asp.net" /></root><head><title>xml</title><style type="text/css">.colors{background-color: red;} </style><script type="text/javascript"> function loadXmlFile(xmlFile)//xmlFile 是xml文件的地址{ var xmlDom = null; if (window.ActiveXObject)//IE浏览器中读取xml文件 { xmlDom = new ActiveXObject("Microsoft.XMLDOM"); xmlDom.async="false"; xmlDom.load(xmlFile); } else if(document.implementation && document.implementation.createDocument) { //Firefox,Chrome 浏览器中读取xml文件 ,Chrome 需要开服务器才能访问 var xmlhttp = new window.XMLHttpRequest(); xmlhttp.open("GET", xmlFile, false); xmlhttp.send(null); xmlDom = xmlhttp.responseXML; } else { xmlDom = null; } return xmlDom;}; //好了读取出来了xml 我们就要获取的他的数据了function gerWords(str){ //生成关键词链接 var xdoc =loadXmlFile("data3.xml") //var list=xdoc.selectNodes("//keys")//只能在Ie浏览器中获取 var list=xdoc.getElementsByTagName("keys");//读取所有节点值 var table = document.createElement('table'); table.createCaption().innerHTML = 'xml数据表'; table.border = 1; table.className = 'colors'; var thead = table.createTHead(); var tr = thead.insertRow(0); var td1 = tr.insertCell(tr.cells.length); td1.innerHTML = "keys"; var td2 = tr.insertCell(tr.cells.length); td2.innerHTML = "name"; var tbody = document.createElement('tbody'); table.appendChild(tbody); for (var i = 0; i < list.length; i++) { var trx = tbody.insertRow(tbody.rows.length); var tdx1 = trx.insertCell(trx.cells.length); var tdx2 = trx.insertCell(trx.cells.length); tdx1.innerHTML = "keys"; tdx2.innerHTML = list[i].getAttribute("name"); } document.getElementsByTagName('body')[0].appendChild(table);};window.onload=function(){ gerWords();};</script></head><body></body>
追问
大哥,可不可以稍微让可读性增强点啊
推荐于2016-08-16
展开全部
参考代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<title>jQuery 读取XML文件-jQuery</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
h1{color:Green;text-align:center;}
body{ background-color:#EEEEEE ; font-family:微软雅黑; }
#showresult{width:600px;overflow:hidden;}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#read").click(function () {
$.ajax({
//请求方式为get
type: "GET",
//xml文件位置
url: "sitemap.xml",
//返回数据格式为xml
dataType: "xml",
//请求成功完成后要执行的方法
success: function (xml) {
$(xml).find("url").each(function (i) {
//i从0开始,累加,如果要显示所有数据,将判断去除即可
if (i < 10) {
//链接地址
var location = $(this).find("loc").text();
//显示文字
var text = $(this).find("loc").text();
//动态加载方法:链接地址
$("<a>").attr("href", location)
//显示文字
.text(text)
//设置样式
.css({ "width": "700px", "float": "left", "margin-bottom": "5px" })
//加载到div
.appendTo("#showresult");
}
})
}
});
return false;
});
});
</script>
</head>
<body>
<div id="showresult">
<h1>jQuery读取XML文件</h1>
<a id="read" href="#" style="width:700px;">点击读取XML</a>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<title>jQuery 读取XML文件-jQuery</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
h1{color:Green;text-align:center;}
body{ background-color:#EEEEEE ; font-family:微软雅黑; }
#showresult{width:600px;overflow:hidden;}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#read").click(function () {
$.ajax({
//请求方式为get
type: "GET",
//xml文件位置
url: "sitemap.xml",
//返回数据格式为xml
dataType: "xml",
//请求成功完成后要执行的方法
success: function (xml) {
$(xml).find("url").each(function (i) {
//i从0开始,累加,如果要显示所有数据,将判断去除即可
if (i < 10) {
//链接地址
var location = $(this).find("loc").text();
//显示文字
var text = $(this).find("loc").text();
//动态加载方法:链接地址
$("<a>").attr("href", location)
//显示文字
.text(text)
//设置样式
.css({ "width": "700px", "float": "left", "margin-bottom": "5px" })
//加载到div
.appendTo("#showresult");
}
})
}
});
return false;
});
});
</script>
</head>
<body>
<div id="showresult">
<h1>jQuery读取XML文件</h1>
<a id="read" href="#" style="width:700px;">点击读取XML</a>
</div>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","cd_catalog.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.getElementById("bre").innerHTML= xmlDoc.getElementsByTagName("item")[0].text;
这个事最典型的读取XML文件的方法
你可以试试谢谢 ,如果还不行请M我
希望能给你帮助
-----君少
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","cd_catalog.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.getElementById("bre").innerHTML= xmlDoc.getElementsByTagName("item")[0].text;
这个事最典型的读取XML文件的方法
你可以试试谢谢 ,如果还不行请M我
希望能给你帮助
-----君少
更多追问追答
追问
这会头比较大,人也比较篮懒了,可以直接写个例子吗,页面加载时把xml中的数据加载到页面上,我直接拿来运行下试试看
追答
我郁闷 做人能这么懒?这就是写好的例子啊 你把cd_catalog.xml 换成你的xml文件 然后在HTML中弄一个div id为bre 就会看见内容 明白么???
----君少
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你ie 能读360不行可能是因为chrome内核浏览器不支持读取本地文件,你放xml到服务器上就行了应该 代码不用改
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询