2010-11-30 8 views
1

Ich möchte rohe Post-Daten senden mit einfachen DHTML, aber ohne das Objekt XMLHttpRequest verwenden. Ist dies möglich, indem beispielsweise die Post-Daten eines HTML-Formularelements in eine beliebige Zeichenfolge umgewandelt werden?Post Rohdaten von Web-Seite

Antwort

1

Bevor Sie das Formular bereitstellen, können Sie HTML-Eingabeelemente (mit Werten) dynamisch zum Formular hinzufügen und dann form.sumbit() aufrufen. Dadurch wird die Seite trotzdem aktualisiert.

Die einzige Möglichkeit, die ich kenne, um Daten ohne Aktualisierung der Seite zu veröffentlichen, ist die Verwendung des XMLHttpRequest-Objekts. Die Verwendung von jQuery macht diese ganze Operation ziemlich trivial http://api.jquery.com/jQuery.post/, so dass ich nicht sicher bin, warum Sie Ajax nicht verwenden möchten, um dies zu erreichen?

+1

Ich habe nichts dagegen, die Seite zu aktualisieren; Der Punkt ist, dass ich nicht an das Format name1 = value1 & name2 = value2 gebunden sein möchte. Ich bin auf der Suche nach einer Möglichkeit, Daten in einem beliebigen Format zu veröffentlichen, und ich verwende XMLHttpRequest (oder eine Bibliothek wie jQuery) nur als letztes Mittel. –

+0

Es gibt keine Möglichkeit (die mir bekannt ist), Daten einem anderen Formular als HTML-Eingabeelementen zuzuordnen. Es wäre jedoch nicht schwer, eine einfache Dienstprogrammfunktion für die Drecksarbeit zu erstellen, so dass Sie ausschließlich mit dem beliebigen Format im Rest Ihres Codes arbeiten können. –

+0

Ihre Antwort lautet also: Wenn ich ein beliebiges Postdataformat haben möchte, muss ich das XMLHttpRequest-Objekt verwenden, um es zu ermöglichen. Um Cross-Browser-Probleme bei der Implementierung zu vermeiden, kann ich jQuery verwenden. Das ist gut genug für mich. –

0

Sie können problemlos eine Zeichenfolge generieren, die einer POST-Anfrage ähnelt. Es gibt keinen großen Unterschied zwischen einem POST und einem GET. Mit GET werden die Parameter hinter der URL hinzugefügt. Beim POST werden die Parameter auf die gleiche Weise, aber unter den Headern hinzugefügt.

Siehe developers.sun.com für ein Beispiel.

+0

Danke, aber ich bin auf der Suche nach etwas reinem HTML/Javascript, das den Trick machen wird. Es ist zwingend erforderlich, dass meine willkürlichen Daten als rohe POST-Daten und nicht als Abfragezeichenfolge übertragen werden. –