• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Formular per Ajax versenden und Ergebnis parsen

Egleria

Neues Mitglied
Huhu ihr,

Jetzt mal im richtigen Forum. Also ich möchte Post-Daten per Ajax an eine extenre URL versenden. Um genauer zu sein an http://mobil.mvg-online.de/XSLT_TRIP_REQUEST2 . Und das Ergebnis dieser Seite dann parsen und in meinen "Widget-Window" verwenden.

Ich habe es inzwischen geschafft die Anfrage per Ajax zu versenden. Allerdings öffnet sich halt bei Ausführung mein Browser und zeigt die Ergebnisseite an. Was ich ja gerne hätte, wäre, dass ich den Inhalt der Ergebnisseite verarbeiten und nach meinen Wünschen angepasst anzeigen kann.

Finde dazu leider kein Tutorial bei google. Kann mir vielleicht jemand erklären wie ich mit Ajax so etwas bewerkstellige? Danke schonmal :)
 
Parser war vielleicht das falsche Wort. Eigentlich suche ich nur nach einer Möglichkeit nicht nur mit Ajax einen "Post-Request" durchzuführen, sondern zusätzlich den Inhalt der dadurch aufgerufenen Seite zu verarbeiten in irgendeiner Weise.
 
Danke dir für deine Antwort,
Das Problem ist nur, dass ich zum einen nicht glaube, dass mir PHP bei der PRogrammierung eines Widgets für mein Handy zur Verfügung steht und zum andern muss ich das ganze mit Ajax in Einklang bringen.
Denn was ich dem Parser übergeben müsste, wäre ja keine URL. Ich sende ja eine Post-Anfrage an eine URL und keine Get. D.h. ich kann die Formulardaten nicht in der URL unterbringen.

Hast du dafür vielleicht auch noch eine Idee? :)
 
Wenn das Ganze eine Webanwendung werden soll, steht sicher auch deinem Handy PHP "zur Verfügung". Und du kannst dem Parser auch POST-Daten senden.
 
jQuery.ajax() – jQuery API es ist auch möglich Daten per POST zu senden.
Dann verwertet die Seite die Daten, an die du das schickst. In welcher Serverseitigen Sprache die geschrieben ist, kann dir ja egal sein. Und alles was die Seite zurück gibt per echo kriegt du als response.
Das kannst du dann mit JS parsen. Am besten nutzt du dafür JSON.
 
Danke euch beiden,
Ich denke ich habe jetzt alles was ich brauche und klemm mich jetzt mal hinter die |Umsetzung. Wenn noch was ist, melde ich mich :)


Edit:
--------------------------------------------------------------------------------------

Habe auch schon die erste längere Frage. Und zwar habe ich ein Formular per HTML nachgebaut, welches auch wunderbar funktioniert. Grobe Form:

HTML:
<form method="post" action="http://mobil.mvg.de/XSLT_TRIP_REQUEST2" id="itdTripRequestEnquiry" >
...
...
...
...
<input class="submit" type="submit" value="Anfordern"/>
Nun möchte ich das ganze mit jQuery realisieren. Also die Postanfrage stellen und die Ergebnisseite anzeigen lassen. Dafür habe ich zunächst das Formular ein wenig gekürzt:
HTML:
<form id="JqPostForm">
...
...
...
...
<input type="submit" value="Submit" />
<div id="message_post"></div>
Beim Submit wird nun folgende Funktion ausgeführt:

HTML:
$(function(){
    $("#JqPostForm2").submit(function(){        
        $.post("http://mobil.gvh.de/mobile3/XSLT_TRIP_REQUEST2", $("#JqPostForm2").serialize(),
        function(data){
                $("#message_post").html(data); 
        }, "json");
        
        return false;
        
    });
});
Nur leider passiert da einfach garnichts. Selbst, wenn ich statt $("#message_post").html(data); einfach $("#message_post").html("test"); verwende. Was genau mache ich falsch? Ist es vielleicht ein Problem mit der Beschaffenheit der angesprochenen Seite?
 
Zuletzt bearbeitet:
Danke euch beiden,
Ich denke ich habe jetzt alles was ich brauche und klemm mich jetzt mal hinter die |Umsetzung. Wenn noch was ist, melde ich mich :)


Edit:
--------------------------------------------------------------------------------------

Habe auch schon die erste längere Frage. Und zwar habe ich ein Formular per HTML nachgebaut, welches auch wunderbar funktioniert. Grobe Form:

HTML:
<form method="post" action="http://mobil.mvg.de/XSLT_TRIP_REQUEST2" id="itdTripRequestEnquiry" >
...
...
...
...
<input class="submit" type="submit" value="Anfordern"/>
Nun möchte ich das ganze mit jQuery realisieren. Also die Postanfrage stellen und die Ergebnisseite anzeigen lassen. Dafür habe ich zunächst das Formular ein wenig gekürzt:
HTML:
<form id="JqPostForm">
...
...
...
...
<input type="submit" value="Submit" />
<div id="message_post"></div>
Beim Submit wird nun folgende Funktion ausgeführt:

HTML:
$(function(){
    $("#JqPostForm2").submit(function(){        
        $.post("http://mobil.gvh.de/mobile3/XSLT_TRIP_REQUEST2", $("#JqPostForm2").serialize(),
        function(data){
                $("#message_post").html(data); 
        }, "json");
        
        return false;
        
    });
});
Nur leider passiert da einfach garnichts. Selbst, wenn ich statt $("#message_post").html(data); einfach $("#message_post").html("test"); verwende. Was genau mache ich falsch? Ist es vielleicht ein Problem mit der Beschaffenheit der angesprochenen Seite?

Einerseits verlangst du von der Seite JSON, aber willst deine Daten direkt als HTML setzen :D
Das geht leider nicht so.
Entweder änderst du den Antworttyp in html ab, oder du müsstest uns mal sagen, ob du denn überhaupt daten im json Format zurück bekommst :)
Wenn ja musst du natürlich so drauf zugreifen data.attributeName wobei attributeName durch den Attribut-Namen zu ersetzen ist, den du abfragen willst ;)
 
Ahhhh danke dir,
Ich hatte nur ein Beispiel für jQuery umgebaut und vergessesn auf HTML umzuschalten. Es liegt allerdings wohl nicht daran. Ich erhalte ja mit:


HTML:
$(function(){
    $("#JqPostForm2").submit(function(){        
        $.post("http://mobil.gvh.de/mobile3/XSLT_TRIP_REQUEST2", $("#JqPostForm2").serialize(),
        function(data){
                $("#message_post").html("Test"); 
        }, "json");
        
        return false;
        
    });
});
Genauso wenig ein Ergebnis. Eigentlich müsste ja nun im "message_post"-div stehen "Test". Soll ich euch mal das etwas längere HTML-Formular reinposten? Hat nur leider ziemlich viele Hidden-Felder, weswegen etwas länger ist ^^
 
Puuuh,
Ich hatte die Indexdatei einfach mal auf meinen Server hochgeladen:

http://web494.luca.servertools24.de/ajax

Wichtig ist dort das grafisch nicht formatierte untere Formular. Das ist das Formular was ich versuche zum laufen zu kriegen ohne Erfolg. Wenn man dort auf submit klickt, passiert einfach garnichts. Wüsste jetzt spontan auch nicht wie ich einen Blick in die Fehlerconsole werfen könnte.
 
Huhu,
Entschuldigt, dass ich solange nichts geschrieben habe. Hatte zu tun.... Also leider konnte ich bislang das Problem nicht lösen. Die Firefox-Fehlerkonsole zeigt überhaupt keine Meldung für meine Seite, leider. Gibt mir also auch keine weiteren Informationen. Ich post euch also einfach mal den gesamten Code der Seite hier rein. (Das komische Tabellenlayout für das Ausrichten des Formulars wird wenns fertig ist noch gegen ein konformes DIV-Layout ausgetauscht):

File-Upload.net - index.rar

(Da leider bei mir die Anhänge nicht funktionieren, habe ich es extern hochgeladen)
 
Zurück
Oben