• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

IFrame mit HTTP POST-Daten füttern...

ele

New member
Ich habe ein kleines Problemchen. In der Anwendung, die ich gerade Entwickle, befindet sich ein IFrame. Der Inhalt kann je nach Parameter eine PDF-Datei, HTML oder einfach Text sein.

Das Problem ist, dass die Parameter unter Umständen recht umfangreich sein können, so dass HTTP-GET nicht mehr ausreicht um alle zu übermitteln. Gibt es eine Möglichkeit um das IFrame mit POST-Parametern zu füttern oder muss ich nach anderen Lösungsmöglichkeiten suchen?
 
Ich konnte das Problem mehr oder weniger Lösen indem ich anstatt Ajax zu benutzen das Formular einfach abschicke, mit dem Attribut target, das auf das IFrame verweist.

Allerdings gibt es nun ein Nachfolgeproblem, denn auf diese Weise funktioniert mein onload-Event nicht mehr und ich kann nicht feststellen wann das Frame fertig geladen ist.

Ich bin für jeden Vorschlag dankbar.
 
Ok, habs wieder einmal selbst geschafft. Mit hilfe der Prototype Funktion .observe('load', ...)

Selbst ist der Mann... :rolleyes:
 
Mit AJAX warst du gar nicht mal so falsch, denn AJAX kann auch POST-Daten übermitteln (wie es wahrscheinlich observe() aus prototype auch nutzt).

Code:
_body="filename="+escape(_filename)+"&content="+escape(_text);
var req = new XMLHttpRequest();
req.onreadystatechange = handleStateChange;
req.open('POST', '/serverscript.php', true, username, password); 
req.setRequestHeader('Content-Type',
                     'application/x-www-form-urlencoded');
req.send(_body);
Quelle: AJAX-Kurs: 4.2 - Aufbau von HTTP-Nachrichten
 
Ja, das war mir schon klar. Aber ich kann nicht mit Ajax den Inhalt eines IFrames ändern, oder kann ich? Möglicherweise geht das ja auch für HTML, habe aber Zweifel, dass dass auch funktioniert wenn der Inhalt eine PDF-Datei ist.
 
Hallo,

Ich will etwas ähnliches realisieren. Und zwar möchte ich body onload nutzen, um einen iframe src anzupassen. Doch der src soll auch POST Daten enthalten.

Ich habe kein Formular im Einsatz. Soll ich virtuell per DOM ein Formular erstellen, das Formular onload() absenden und dann als Target den iframe modizifieren? Das wäre ja dann ohne AJAX zu lösen. Und vor allen Dingen kann ich im iframe bei deaktiviertem JS auch eine Alternativ-URL angeben.

Gruß
 
Zurück
Oben