以下のコードで問題が発生しています。スクリプトは、2つの変数と1つのファイルをphp-scriptに送信して、サーバーにアップロードします。FirefoxとChromeではすべてがスムーズに実行されますが、Operaでは「ReferenceError:Undefined variable:FormData」が表示されます。
File APIを使用しているため、IEまたはSafariでテストできません。スクリプトには他の関数がありますが、ここでエラーが発生するため、これら2つだけが重要です。
datumActiviteit = "testxx";
naamActiviteit = "testyy";
function sendFiles() {
try{
var imgs = document.querySelectorAll(".obj");
for (var i = 0; i < imgs.length; i++) {
new BestandenUploaden(imgs[i],imgs[i].file);
}
}
catch(ex){alert(ex);}
}
function BestandenUploaden(img,file){
try{
var formData = new FormData();
formData.append("activiteit", naamActiviteit);
formData.append("datum", datumActiviteit);
formData.append("bestand", file);
var oXHR = new XMLHttpRequest();
oXHR.open("POST", "launcherV2.php");
oXHR.onreadystatechange = function (oEvent) {
if (oXHR.readyState==4 && oXHR.status==200) {
if (oXHR.responseText == "continue") {
img.parentNode.lastChild.style.opacity = "1.0";
img.parentNode.lastChild.style.backgroundColor = "transparent";
img.parentNode.lastChild.style.backgroundImage = "url(../afbeeldingen/rocket/complete.png)";
}
else {
window.alert(oXHR.responseText);
}
}
else{
window.alert("readyState or status error :", oXHR.statusText);
}
};
oXHR.send(formData);
}
catch(err){alert(err)};
};
Opera(v11.62)だけがこのエラーをスローする理由を誰かが知っていますか?