0

XMLファイルにデータを挿入することになっていたjs関数があります。すべてがローカルサーバーで実行されています。関数の引数は、別の関数から送信される変数です。

function xmlinsert(srcf, typef, textf) {

console.log("Type: "+typef);
console.log("Source: "+srcf);
console.log("Text: "+textf);

//XML Connection
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.open("GET","./include/xml/gallery.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;

var divi = xmlDoc.createElement("divi");

var photo = xmlDoc.createElement("photo");

var source = xmlDoc.createElement("source");
source.appendChild(xmlDoc.createTextNode(srcf));

var type = xmlDoc.createElement("type");
type.appendChild(xmlDoc.createTextNode(typef));

var text = xmlDoc.createElement("text");
text.appendChild(xmlDoc.createTextNode(textf));

var picname = xmlDoc.createElement("picnamet");
picname.appendChild(xmlDoc.createTextNode("A"));

photo.appendChild(source);
photo.appendChild(type);
photo.appendChild(text);
photo.appendChild(picname);
divi.appendChild(photo);

ix=xmlDoc.getElementsByTagName("root")[0];
ix.appendChild(divi);

}

問題は、関数が実行されても何も起こらないということです。ファイルは同じままです。同じファイルが、そのデータを実際に読み取って表示する別の関数によって使用されます。これは正しく機能します。ブラウザのコンソールにエラーは表示されません。

コードのどこが間違っていますか? データの読み取りはできるのに、書き込みはできないのはなぜですか? 許可の問題が原因ですか?

前もって感謝します!

4

1 に答える 1

1

残念ながら、JavaScript を使用して XML ファイルに書き込むことはできません。

于 2013-09-23T08:19:42.123 に答える