Post formdata über XMLHttpRequest-Objekt in JS ? ( cross-browser)
Ich versuche zu post ein Formular Daten in js :
Habe ich diesen code :
var formData = new FormData();
formData.append("username", "Groucho");
formData.append("accountnum", 123456);
formData.append("afile", "2");
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://xxxxx/xx.ashx",true);
xhr.send(formData);
Formdata nach MDN ist nicht verfügbar in IE ( oder unbekannt).
Wenn ich versuche diese in FF :
( ich denke, die feine...).
wenn ich versuche in IE :
Was ist die Lösung für das post-Formular-Daten ( oder meine Daten, sondern in objektiver Art und Weise) CROSSBROWSER ?
InformationsquelleAutor Royi Namir | 2011-11-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihnen nicht sagen, welche version des IE du verwendest. Das formData-Objekt ist nicht unterstützt IE9 oder niedriger. XMLHTTPRequest2 (enthält das formData-Objekt) unterstützt werden sollten im IE10 (http://caniuse.com/xhr2)
Cross-browser-AJAX-file-upload ist sehr schwer zu tun, gerade jetzt. Sie könnte versuchen, den Aufbau Ihrer eigenen Formularkopf/- Grenzen in Javascript (siehe Antwort hier: XMLHttpRequest-POST multipart/form-data), aber ich persönlich glaube nicht, dass es die Mühe Wert.
InformationsquelleAutor BlueSix
Schrieb ich einen einfachen wrapper, die Sie verwenden können, um zu senden FormData im IE (und es wird nicht mess up alles, was in webkit/gecko). Schließen Sie einfach das folgende js, bevor Sie versuchen zu verwenden FormData:
}
Jetzt einfach wechseln, alle new FormData () - Aufrufe, um neue ieFormData(), und schalten Sie
zu
und Sie sind alle gesetzt. Natürlich können Sie nicht zu include-Dateien (Sie benötigen noch die iframe-hack), aber es wird Ihnen erlauben, zu imitieren, FormData im IE.
Ich bin auch nicht allzu besorgt über die geschrieben Datei, ich will nur Einreichen können, dem rest der Formulardaten
InformationsquelleAutor Sam Grondahl