Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Ajax修改XML?_Javascript_Xml_Ajax - Fatal编程技术网

Javascript 使用Ajax修改XML?

Javascript 使用Ajax修改XML?,javascript,xml,ajax,Javascript,Xml,Ajax,如何使用JavaScript/Ajax修改XML文件中的值 我可以使用Ajax打开XML文件,并在脚本中使用它的值,但现在我想使用Ajax将脚本所做的更改发送回服务器上的XML文件 我认为这应该是可能的,但我找不到一个可以学习的例子。我也学习了很多来自的教程,但通常他们使用XML中的数据,并且不会对其进行更改 我不喜欢使用其他语言,因为它是一个非常简单的脚本和XML文件,只包含4个字段。以下是使用javascript将XML发送回服务器端的方法: jQuery.post( url,

如何使用JavaScript/Ajax修改XML文件中的值

我可以使用Ajax打开XML文件,并在脚本中使用它的值,但现在我想使用Ajax将脚本所做的更改发送回服务器上的XML文件

我认为这应该是可能的,但我找不到一个可以学习的例子。我也学习了很多来自的教程,但通常他们使用XML中的数据,并且不会对其进行更改


我不喜欢使用其他语言,因为它是一个非常简单的脚本和XML文件,只包含4个字段。

以下是使用javascript将XML发送回服务器端的方法:

jQuery.post( 
    url, 
    xml_as_string, 
    success( data, textStatus, jqXHR){

    }, 
    "xml"
);
您可以使用DOMParser访问javascript中的XML


使用javascript,您可以更改所需节点的xml值及其属性

首先,您需要通过getElementbyname或使用javascript xquery从xml中获取所需的节点

例如,从链接检查xml

假设我有一个值xml\u item=它有那个xml

就像我想改变tag的值一样。 然后我这样做是为了改变值。 var element_to=xml.getElementsByName'to'[0]; //若要更改其值,请先检测borwser(如果是),然后使用 element_to.text=您的新值 //如果不是,即,则使用。 element.to.textContent=您的新值

//若要更改元素的属性值,则需要执行此操作。 元素名称,新值


我希望您能理解这一点。

您是想在客户端用Javascript修改它,还是在服务器端用某种服务器端编程语言修改它?xml文件在服务器上。我可以通过ajax阅读它,并使用javascript将所需的值放入数组中,这样就可以在客户端使用。更改javascript中的值后,我想将新值发送到服务器。我可以用ajax实现吗?所以我实际上需要更改服务器端的文件。是的。。。谢谢你的回复。。这是否也会将新值更新到服务器?因为您正在设置新值,但不将其发送到服务器。这就是我现在的问题。。。我可以更改值,但无法更新服务器上的xml..使用javascript函数XMLHttpRequest将xml请求发送到服务器,如果该回答帮助您将其标记为Correct answer.thankssome this request.openGET,files/fruit.xml,true;request.sendnull;request.onreadystatechange=函数{if request.readyState==4 showrequest.responseText.length;};谢谢你的回复。。我现在是这样工作的。ajax{type:GET,url:players.xml,dataType:xml,success:functionxmlData{$xmlData.findplayer1.eachfunction{/$testing.append$this.findname.text;var-naamTest=$this.findname.text;$testing.htmlnaamTest;};};},错误:函数{alert无法检索xml文件。};现在我想更改naamTest的值并将其发送回服务器上的xml文件。。。你知道我该怎么做吗?谢谢
// 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
   }
});