これまでにこれを行ったことがありませんが、ここでいくつかの情報を見つけました: jQuery
を使用してxmlを文字列に変換する以下をテストしました。これにより、元のxmlが変更され、によって受信された文字列としてサーバーに返送されます。$_POST['xml']
$(function() {
$.get('test.xml', function(xml) {
var $xml = $(xml)
/* change all the author names in original xml*/
$xml.find('author').each(function() {
$(this).text('New Author Name');
})
var xmlString=jQ_xmlDocToString($xml)
/* send modified xml string to server*/
$.post('updatexml.php', {xml:xmlString },function (response){
console.log(response)
/* using text dataType to avoid serializing xml returned from `echo $_post['xml'];` in php*/
}'text')
}, 'xml')
});
function jQ_xmlDocToString($xml) {
/* unwrap xml document from jQuery*/
var doc = $xml[0];
var string;
/* for IE*/
if(window.ActiveXObject) {
string = doc.xml;
}
// code for Mozilla, Firefox, Opera, etc.
else {
string = (new XMLSerializer()).serializeToString(doc);
}
return string;
}
デモ:http://jsfiddle.net/54L5g/