AJAX: Probleme mit Post
lima-city → Forum → Programmiersprachen → Sonstige Programmiersprachen
aussehen
code
datum
durchlaufen beitrag
element
feld
folgendem code
formular
funktion
geschafft code
input
methode
parameter
post
schleife
unterscheiden
variable formular
-
ich habe mir eine ajax funktion geschrieben, die GET und POST unterscheiden kann.
wenn daten durch post übermittelt werden sollen, übergibt man an die funktion die id des formulars und die funktion durchläuft dann alle <input>-felder innerhalb des formulars und gibt die daten dann weiter...
ein formular könnte z.b. so aussehen:
<form name='form_nachricht' method='post' action=''> <input type='text' name='betreff' id='form_nachricht_1'/> <textarea name='text' id='form_nachricht_2'></textarea> </form>
das javascript, das die post-daten zusammensetzt sieht so aus:
// die variable "formular" wird per parameter an die funktion übergeben und enthält die id des formulars, hier also "form_nachricht" if((methode == "POST") && formular) { var nr = 0, post = ""; var element; // Alle <input>-Felder im Formular durchlaufen while(nr++ < 100) { if(!(element = document.getElementById(formular + "_" + nr))) break; if(post) post = post + "&"; post = post + element.name + "=" + element.value; } }
dieses script funktioniert zwar, wenn aber im formular ein fehler gemacht wurde und man die id-eines <input>-felds falsch angibt, bricht die schleife ab und es werden nicht alle parameter übergeben.
gibt es eine andere möglich keit alle input-, textarea-, checkbox-, felder etc. mit einer schleife zu durchlaufen?
Beitrag geändert: 9.9.2008 19:47:17 von stivo
mit folgendem code habe ich es jetzt doch noch geschafft:
if((methode == "POST") && formular) { var post = ""; // Alle <input>-Felder im Formular durchlaufen var elemente = document.forms[formular].elements; for(i = 0; i < elemente.length; i++) { if(post) post = post + "&"; post = post + elemente[i].name + "=" + elemente[i].value; } }
Beitrag geändert: 19.9.2008 17:30:46 von ferdinand24 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage