如何使用 JavaScript/Ajax 修改 XML 文件中的值?
我可以使用 Ajax 打开 XML 文件,并在我的脚本中使用它的值,但现在我想使用 Ajax 将我的脚本所做的更改发送回服务器上的 XML 文件。
我认为这应该是可能的,但我找不到可以学习的例子。我遵循了很多教程(也来自http://lynda.com),但通常他们使用来自 XML 的数据并且他们不会更改它。
我不喜欢使用其他语言,因为它是一个非常简单的脚本和 XML 文件,只包含 4 个字段。
如何使用 JavaScript/Ajax 修改 XML 文件中的值?
我可以使用 Ajax 打开 XML 文件,并在我的脚本中使用它的值,但现在我想使用 Ajax 将我的脚本所做的更改发送回服务器上的 XML 文件。
我认为这应该是可能的,但我找不到可以学习的例子。我遵循了很多教程(也来自http://lynda.com),但通常他们使用来自 XML 的数据并且他们不会更改它。
我不喜欢使用其他语言,因为它是一个非常简单的脚本和 XML 文件,只包含 4 个字段。
以下是使用 javascript 将 xml 发送回服务器端的方法:
jQuery.post(
url,
xml_as_string,
success( data, textStatus, jqXHR){
},
"xml"
);
您可以使用 DOMParser 在 javascript 中访问 XML
http://www.erichynds.com/jquery/working-with-xml-jquery-and-javascript/
// the correct way to use jQuery w/ XML
// also see http://gist.github.com/553364 for a normalized DOMParser
var
// XML string
xmlString = '<wu_tang><member name="Method Man" /></wu_tang>',
// DOM parsing object
parser = new DOMParser(),
// XML DOM object
xmlObject = parser.parseFromString(xmlString , "text/xml");
// this is WRONG. It works, but you're not on an XML DOM
$( xmlString ).find("member").attr("name"); // -> Method Man
// the correct way
$( xmlObject ).find("member").attr("name"); // -> Method Man
// in XHR requests the parsing is automatically done for you by
// the browser. jQuery passes it into the success callback
$.ajax({
dataType: 'xml',
url: 'wutang.xml',
success: function( XMLObject ){
// OMG
$( xmlObject ).find("member").attr("name"); // -> Method Man
}
});
使用 javascript,您可以更改所需节点的 xml 值及其属性。
首先,您需要通过 getElementbyname 或使用 javascript xquery 从 xml 中获取所需的节点。
例如从链接http://www.w3schools.com/xml/default.asp检查 xml
假设我有价值 xml_item = 有那个 xml。
就像我想更改标签的值一样。然后我这样做是为了改变价值。var element_to = xml.getElementsByName('To')[0]; //要改变它的值,首先检测borwser是否是IE然后使用element_to.text =“你的新值” //如果不是ie然后使用。element.to.textContent = "你的新值";
//如果你想改变元素的属性值,你需要这样做。element_to.setAttribute("attibute_name","new_value");
我希望你能明白这一点。