一个纯的html界面,去读取xml文件的数据,怎么写 一个纯的html界面,去读取xml文件的数据,怎么写.xml文件就在html文件旁边,可以去增删改查xml数据.给个例子之类的,或者说说你得思想~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DOM 对象可以操作xml文件和数据 但如果是网页的话,是不可以操作数据的。只可以读取。 HTA(Html Application)好像可以 如果是所谓的纯html的话,就只能用javascript了。javaScript有处理xml的方法,页面和服务器之间可以用Ajax来进行数据交互 XML: * <?xml version='1.0' encoding='utf-8'?> * <ekuy> * <user> * <name> * <cnname>小猪</cnname> * </name> * <age>27</age> * </user> * <user> * <name> * <cnname>小霞</cnname> * </name> * <age>26</age> * </user> * </ekuy> */function getXMLArray(xmlDoc, name) { var keys = name.split('.'); var node = xmlDoc.documentElement; // 得到根节点 var rtn = new Array(); var n = 0; for(var i=0; i<keys.length; i++) { var childs = node.childNodes; // 得到子节点 var key = keys[i]; for(var k=0; k<childs.length; k++) { var child = childs[k]; if(child.nodeName == key) { // 判断子节点是否符合 if(i == keys.length-1) { rtn[n] = child; n++; } else { node = child; break; } } } } return rtn;}/** * 得到由getXMLArray函数得到对象中的值 * @param node 节点对象 * @param name * @return 返回 String */function getValue(node, name) { var keys = name.split('.'); for(var i=0; i<keys.length; i++) { var childs = node.childNodes; // 得到子节点 var key = keys[i]; for(var k=0; k<childs.length; k++) { var child = childs[k]; if(child.nodeName == key) { // 判断子节点是否符合 if(child.childNodes.length == 1) { // 如果没有字节点,返回值 return child.text; } else { // 还有子节点,继续分析 node = child; break; } } } } return "";}// 测试:var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");xmlDoc.async = false;xmlDoc.loadXML("<?xml version='1.0' encoding='utf-8'?><ekuy><user><name><cnname>小猪</cnname></name><age>27</age></user><user><name><cnname>小霞</cnname></name><age>26</age></user><user><name><cnname>小章</cnname></name><age>25</age></user></ekuy>");var list = getXMLArray(xmlDoc, 'user');for(var i=0; i<list.length; i++) { var obj = list[i]; document.write(getValue(obj, 'name.cnname')); document.write(getValue(obj, 'age')); document.write('<br\/>');} 打印出:小猪27小霞26小章25 纯html的话,是不能读取xml的,他只能通过像JavaScript,ajax等等去掉用dom技术,jdom技术,sax HTML只是文本而已,你需要一个可以执行HTML中的脚本的软件,例如各种浏览器。 你这个应该建立几个文件呢?javascript处理的方法怎么做呢? 纯html怎么处理xml啊 我知道js可以但也要配合服务器啊 大家都说说! 网上已经有封装很好的解析xml 的js了, 下载一个就直接可以用....何必要自己去写了. 1、javascript操作dom,来获取xmL或者2、javascript执行ajax。然后请求jsp或者别的动态页面来让那些页面执行xml,把结果返回来就可以了。(我原来是第一种方法做的,现在在改为第二种方法) <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script language="JavaScript" for="window" event="onload">var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.load("article.xml");nodes = xmlDoc.documentElement.childNodes;tag1.innerText=nodes.item(0).text;tag5.innerText=nodes.item(0).text;tag2.innerText=nodes.item(1).text;tag3.innerText=nodes.item(2).text;tag4.innerText=nodes.item(3).text;</script></head><body><ul><li id=tag1></li><li id=tag5></li><li id=tag2></li><li id=tag3></li><li id=tag4></li></ul></body></html> <?xml version="1.0" encoding="utf-8"?><article> <title>sadasd </title> <author>Tom</author> <email>[email protected]</email> <data>20010115</data></article>article.xml文件 logic:iterate如何两重遍历 struts2与spring整合问题 jfreeChart访问SQL数据库做曲线表的一个重大问题? 关于JSP页面中的out隐含对象 如何做到在一个系统中登陆后,直接进入其他相关系统? SQL语句 找出一段文字中所有换行符的问题 请问如何才能用DocumentBuilder解析xml字符串,得到xml Document. 求救:关于APPLET的问题 会的帮我一下成么? 数字转化为星期 Ext得表单。求解答。。在线等!急!!!!
* <?xml version='1.0' encoding='utf-8'?>
* <ekuy>
* <user>
* <name>
* <cnname>小猪</cnname>
* </name>
* <age>27</age>
* </user>
* <user>
* <name>
* <cnname>小霞</cnname>
* </name>
* <age>26</age>
* </user>
* </ekuy>
*/
function getXMLArray(xmlDoc, name) {
var keys = name.split('.');
var node = xmlDoc.documentElement; // 得到根节点
var rtn = new Array();
var n = 0;
for(var i=0; i<keys.length; i++) {
var childs = node.childNodes; // 得到子节点
var key = keys[i];
for(var k=0; k<childs.length; k++) {
var child = childs[k];
if(child.nodeName == key) { // 判断子节点是否符合
if(i == keys.length-1) {
rtn[n] = child;
n++;
} else {
node = child;
break;
}
}
}
}
return rtn;
}
/**
* 得到由getXMLArray函数得到对象中的值
* @param node 节点对象
* @param name
* @return 返回 String
*/
function getValue(node, name) {
var keys = name.split('.');
for(var i=0; i<keys.length; i++) {
var childs = node.childNodes; // 得到子节点
var key = keys[i];
for(var k=0; k<childs.length; k++) {
var child = childs[k];
if(child.nodeName == key) { // 判断子节点是否符合
if(child.childNodes.length == 1) {
// 如果没有字节点,返回值
return child.text;
} else {
// 还有子节点,继续分析
node = child;
break;
}
}
}
}
return "";
}// 测试:
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML("<?xml version='1.0' encoding='utf-8'?><ekuy><user><name><cnname>小猪</cnname></name><age>27</age></user><user><name><cnname>小霞</cnname></name><age>26</age></user><user><name><cnname>小章</cnname></name><age>25</age></user></ekuy>");
var list = getXMLArray(xmlDoc, 'user');
for(var i=0; i<list.length; i++) {
var obj = list[i];
document.write(getValue(obj, 'name.cnname'));
document.write(getValue(obj, 'age'));
document.write('<br\/>');
}
打印出:
小猪27
小霞26
小章25
你这个应该建立几个文件呢?javascript处理的方法怎么做呢?
何必要自己去写了.
或者
2、javascript执行ajax。然后请求jsp或者别的动态页面来让那些页面执行xml,把结果返回来就可以了。(我原来是第一种方法做的,现在在改为第二种方法)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script language="JavaScript" for="window" event="onload">
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.load("article.xml");
nodes = xmlDoc.documentElement.childNodes;
tag1.innerText=nodes.item(0).text;
tag5.innerText=nodes.item(0).text;tag2.innerText=nodes.item(1).text;
tag3.innerText=nodes.item(2).text;
tag4.innerText=nodes.item(3).text;</script>
</head><body>
<ul>
<li id=tag1></li>
<li id=tag5></li>
<li id=tag2></li>
<li id=tag3></li>
<li id=tag4></li></ul>
</body>
</html>
<title>sadasd </title>
<author>Tom</author>
<email>[email protected]</email>
<data>20010115</data>
</article>article.xml文件