Knut Meinke: formularvariablen zwischen iframes übergeben

Beitrag lesen

Hi,

ich habe aber keine ahnung wie ich die variablen mit diesem

textlink übergebe...

Mehrere Möglichkeiten:

1.) Variablen mit GET Methode Übergeben

Variablen kannst du per query string übergeben. Ein Query String wird an die Url angehängt und hat die Form:

http://domain.de/datei.html?name1=value1&name2=value2

Den Query String müstest du mit javascript an die Url anhängen:

frame.location.href= "datei.html?name=" +urlEncode(oInput.value)+ " [...]

Wichtig ist das Texte die du über gibst "URLEncoded" sind. Im Grunde werden leer und sonderzeichen durch komische konstrukte ersetzt ^^ (leerzeichen ist %20 zumbeispiel)

2.) Variablen mit POST Methode übergeben

Du kannst ein Formular direkt an einen anderen Frame abschicken:

<form method="post" action="datei.html" target="framename">[...]

Auf der Seite kannst du die Variablen dann per z.B. PHP auslesen.

3.) Variablen per DOM Übergeben

Du kannst dich auch ausschließlich auf JavaScript verlassen und die Variablen client seitig zwischen den einzelen DOMs übergeben:

<frame1>
function myEventHandler(str)
{
 oFrame = [...]
 oFrame.document.myVariable = str;

<frame2>

function test()
{
 alert(window.document.myVariable);
}

4.) UserData Store

Im IE gibt es einen CLient Seitigen User Data Store, eine XML Datei irgendwo im IE Verzeichnis in die du per javascript schreiben und lesen kannst. Das ding ist persistent und überlebt auch sessions - eine art client seitiger cookie ;) Mehr dazu findest du sicher im msdn..

5.) Verzichte auf die Frames

Frames braucht kein mensch mehr. schmeiß die dinger raus und benutze server side includes um document teile auszulagern. frames machen aggressiv - mich zumindest :)

gruß
Knut