AJAX und POST Übergaben
McKentire
- javascript
0 steckl
Guten Tag allerseits,
ich suche schon seit einiger Zeit in verschiedenen Foren bzw. über Google nach einer Lösung meines Problems. Aber irgendwie finde ich einfach nichts, dabei sollte man doch meinen, dass es sich ziemlich einfach lösen lassen sollte. :/
Und zwar: Wie kann ich POST Variablen aus einem Formular per AJAX übertragen? Bei GET hängt man ja die entsprechenden Variablen einfach an die URL an ?a=b&c=d ...
Nehmen wir der Vollständigkeit halber mal einen Beispielcode:
var http_request = false;
function startRequest (url) {
http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safarie etc.
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType ('text/xml');
}
} else if (window.ActiveXObject) { // Internet Explorer
try {
http_request = new ActiveXObject ("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject ("Microsoft.XMLHTTP");
} catch (e) {}
}
}
http_request.onreadystatechange = useContent;
http_request.open ('GET', url, true);
http_request.send (null);
}
function useContent () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var content = http_request.responseText;
// beliebige Ausgabe z.B. mittels innerHTML
} else {
// Fehlerausgabe (z.B. nicht gefunden)
}
}
}
Dazu ein einfaches HTML Formular:
<form method = "POST" action = "javascript:StartRequest('./datei.php');">
<input type = "text" name = "feld1" value = "Wort oder Text" />
<input type = "text" name = "feld2" value = "Noch mehr davon" />
<input type = "submit" />
</form>
Danke schonmal! :)
MfG,
McKentire
Hi,
Und zwar: Wie kann ich POST Variablen aus einem Formular per AJAX übertragen? Bei GET hängt man ja die entsprechenden Variablen einfach an die URL an ?a=b&c=d ...
Das geht auch so ähnlich. Du kannst die Parameter mit der send-Methode übergeben. Wie genau das geht steht im Mozilla Developer Center am Ende von Schritt 1.
Beachte auch, dass du den MIME-Type ändern musst.
mfG,
steckl