prototype.js: Ajax mit POST?

JavaUncle

Mitglied
Ich finde keine Beispiele im Netz, die sich auf Ajax mit POST beziehen. Und zwar muss ich mehrere Werte angeben. Ein Wert aus einem Input, und ein Wert aus einer Textarea (mehrzeilig!).

Weis hier jemand wie POST bei prototype.js mit mehreren Werten benutzt wird? Den Wert der Textarea kann ich doch nicht einfach an die Request-URL hängen. Ist mehrzeilig und kann locker mal 1000 Zeichen und mehr haben.
 
Hallo,

dann hast du nicht richtig gesucht ;)
Google "ajax post beispiel", Erstes Ergebnis: Klick!.

https://developer.mozilla.org/de/AJAX/Getting_Started hat gesagt.:
Der Parameter der send()-Methode können beliebige Daten sein, die an den Server per POST gesendet werden sollen. Die Daten sollten in Form einer Suchanfrage formuliert sein, etwa so:

name=wert&anderername=andererwert&so=weiter

Bei der Übergabe der Daten per POST ist zu beachten, dass der MIME-Typ der Anfrage wie folgt angepasst werden muss:

http_request.open('POST', 'http://www.beispiel.org/eine.datei', true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send('name=wert&anderername=andererwert&so=weiter');

Andernfalls wird der Server die per POST übergebenen Daten ignorieren. Wichtig dabei ist, dass die 'setRequestHeader'-function nach der 'open'-function aufgerufen wird, da es sonst zu einem Fehler kommt.

Gruß
Bratkartoffel
 
prototype.js: Ajax POST mit mehreren Parametern im Body?

Wie gebe ich mehrere Parameter im Body an?

Code:
new Ajax.Request(url, {
			method:'post',
			postBody: 'synonyms='+username,
			onSuccess: function(transport) { 
						//mach was
			}
}
 
Hi,

die Werte werden über die Eigenschaft parameter übergeben. Mehr dazu findest du in er Dokumentation zu prototype (Ajax-Optionen, Einführung in Ajax).
Code:
new Ajax.Request(url, {
  method:'post',
  parameter: {synonyms: 'username', text: 'InhaltDerTextarea'},
  onSuccess: function(transport) { 
    //mach was
  }
}
Ciao
Quaese
 
Zurück