繁体   English   中英

如何从JavaScript更改XML元素值?

[英]How can I change an XML element value from JavaScript?

我有一个XML DB,并且能够使用JS的DOM解析XML。 我无法弄清楚的是,如何更改XML数据库中的值?

我尝试使用:

xmlDoc.getElementsByTagName("COMMENT")[0].childNodes[0].nodeValue="text"; 

但这不会更改实际的数据库。 当我刷新页面时,它再次为我提供了相同的旧值。

我究竟做错了什么?


编辑:

我仅在客户端页面上进行更改,而没有将数据发送回数据库中进行相关更改。

我了解我应该使用AJAX或其他工具,但是能否请您给我一些指导,以指导我阅读哪些内容或可以学习的示例?

您不能使用JavaScript编写XML,只能将XML DOM的副本加载到内存中并操作该副本。 显然,当JS实例重新启动(重新加载页面)或从原始文件重新加载时,该销毁了。

如果XML在服务器上,则需要服务器端语言(例如PHP,ASP.NET,Ruby on Rails等)将任何内容写入服务器上的磁盘。 该代码在服务器上执行,而不是在浏览器中执行。

为了在JavaScript代码和服务器端代码之间进行通信,AJAX是答案。 List Apart有很好的入门资源 想到的最简单的模型是使用AJAX将完整的,经过修改的XML块发送到服务器端代码,从而将其保存。

如果要处理大文件和频繁更新,则可能要考虑使用AJAX将操作指令发送到服务器端代码,该代码将执行更改并保存文件。

您基本上没有告诉我们任何相关信息,但是很可能您只是在更改客户端页面,并且不做任何努力(例如使用表单或AJAX)发回更改。

更改后需要保存数据库。 Web浏览器上的DOM和JS无法使用,因此您应使用AJAX或类似的东西来处理XML

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM