在javascript中添加节点到xml文件
问题描述:
我想添加一个条目到使用javascript的xml文件。下面的代码应该添加一个名为book的节点到这个文件中。但它根本不起作用。我也尝试了一些其他代码来改变xml数据库中的条目,但也没有成功。那么我的过错是什么?在javascript中添加节点到xml文件
CODE:
function loadXMLDoc(dname) {
if (window.XMLHttpRequest) {
xhttp=new XMLHttpRequest();
}
else {
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}
xmlDoc=loadXMLDoc("database.xml");
newNode = xmlDoc.createElement("entry");
newNode.nodeValue = "aaaaa";
x=xmlDoc.documentElement;
x.appendChild(newNode);
XML文件(database.xml):
<?xml version="1.0" encoding="ISO-8859-1"?>
<database>
<entry>
<title>Everyday Italian</title>
<content>Strange. I seem to get hungry about the same time every day!</content>
<time>August 7, 2012, 6:24 PM</time>
<comment>Giada De Laurentiis</comment>
</entry>
<entry>
<title>I'm Hungry</title>
<content>I really need something to eat!!</content>
<time>August 7, 2012, 6:24 PM</time>
<comment>Giada De Laurentiis</comment>
</entry>
</database>
答
您正在阅读通过网络的XML文件,而我猜你正在修改在MEMORY中加入一个新节点的XML文件。但是代码中没有任何东西可以将修改的XML文件从内存中保存到可持久的介质中。您可以实现POST或PUT方法来写入文件,就像执行GET方法来读取文件一样。当然,您的Web服务器应该配置为接受这样的PUT请求并覆盖原始文件。
你能举一个例子来说明如何实现这个POST OR PUT方法吗? –
这完全取决于您将哪个软件用作Web服务器。你在使用IIS吗?或Apache?或NodeJS? –
修复了整个事情与PHP。多么愚蠢的想法来修改文件客户端;) –