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);
}
問題は、関数が実行されても何も起こらないということです。ファイルは同じままです。同じファイルが、そのデータを実際に読み取って表示する別の関数によって使用されます。これは正しく機能します。ブラウザのコンソールにエラーは表示されません。
コードのどこが間違っていますか? データの読み取りはできるのに、書き込みはできないのはなぜですか? 許可の問題が原因ですか?
前もって感謝します!