Javascript-Array aus anderem Frame an perlscript übergeben
Thorsten Steffen
- perl
Hi,
ich habe 3 Frames auf meiner Page und möchte in frame1 ein js-array aus frame2 an ein perlscript weitergeben,
sieht vereinfacht folgendermaßen aus:
<A HREF="bestellung.pl?parent.framename.bestellung">test</a>
Was stimmt daran nicht ? Geht das überhaupt ? Oder kann man nur js-variablen aus demselben frame übergeben ?
Gruß
Thorsten
Hallo,
<A HREF="bestellung.pl?parent.framename.bestellung">test</a>
Das mußt du so schreiben: <a href="javascript:location.href='bestellung.pl?' + parent.framename.bestellung">test</a>
Allerdings werden dabei alle Elemente des Arrays durch Komma getrennt übertragen. Sollen die Elemente anders übertragen werden, dann mußt du eine function aufrufen in der diese in deinem gewünschten Format aufbereitet werden.
Grüße
Thomas Mell
Hatte ich eben ganz vergessen ... Ist nämlich bei mir genau der Fall, daß in den Feldern des Arrays auch Kommas vorkommen können.
Wie kann ich die Trennzeichen zwischen den Feldern des Arrays verändern, optimal wäre natürlich, wenn
man zusätzlich noch die "Zeilenenden" (es handelt sich um eine 2dimensionale Tabelle) anders markieren könnte ?
Hat jemand einen Vorschlag ?
Hallo,
<A HREF="bestellung.pl?parent.framename.bestellung">test</a>
Das mußt du so schreiben: <a href="javascript:location.href='bestellung.pl?' + parent.framename.bestellung">test</a>
Allerdings werden dabei alle Elemente des Arrays durch Komma getrennt übertragen. Sollen die Elemente anders übertragen werden, dann mußt du eine function aufrufen in der diese in deinem gewünschten Format aufbereitet werden.
Grüße
Thomas Mell
Hallo,
Hatte ich eben ganz vergessen ... Ist nämlich bei mir genau der Fall, daß in den Feldern des Arrays auch Kommas vorkommen können.
Wie kann ich die Trennzeichen zwischen den Feldern des Arrays verändern, optimal wäre natürlich, wenn
man zusätzlich noch die "Zeilenenden" (es handelt sich um eine 2dimensionale Tabelle) anders markieren könnte ?
Um alle Elemente eines Arrays zu verbinden, gibt es die Methode "join" <../../tecc.htm#a4>
Damit kannst du eine Zeichenkette erzeugen welche aus den Einzelelementen, getrennt durch ein (oder mehrere) beliebiges Zeichen, besteht.
ar = new Array(1, 2, 3, 4);
x = ar.join('#');
Ergibt "1#2#3#4"
Bei einem 2dimensionalen Array durchläufst du die eine Dimension in einer Schleife und erzeugst mit der 2.Dimension eine Zeichenkette, die pro Durchlauf immer länger wird. Damit man die beiden Dimensionen wieder trennen kann, braucht man nur ein weiteres Trennzeichen bei jeden Schleifendurchlauf einfügen.
Grüße
Thomas Mell