Hallo!
Ein einfaches Problem??
…ja nu, weiss nicht:
Habe auf einer Seite eine Variable in einem , ich rufe
eine zweite Seite auf und möchte da den Inhalt der Variablen
benutzen.
Wie stell ich das an?
Besten Dank im Voraus
Nick
Hallo!
Ein einfaches Problem??
…ja nu, weiss nicht:
Habe auf einer Seite eine Variable in einem , ich rufe
eine zweite Seite auf und möchte da den Inhalt der Variablen
benutzen.
Wie stell ich das an?
Besten Dank im Voraus
Nick
hi
ich rufe
eine zweite Seite auf und möchte da den Inhalt der Variablen
benutzen.
du kannst eine varialbe übergeben indem du sie mit in den link schreibst
statt: seite.html
schreibst du: seite.html?variable
seite.html muß die variable per js lesen.
dazu schreibst du ein kleine funktion:
function read() {
var meinevar = location.search;
}
den aufruf packst du in den body: onLoad=„read()“
soweit ich mich erinnern kann steht jetzt aber in meinevar deine variable mit einem fragezeichen am anfang. aber das kannst du ja lösen indem du mit string.substring den teil extrahierst den du willst. aber das kannst du ja sicher…
gruss volker
Vielen Dank!
ChriMe hat mir sogar coole Scripte zukommen lassen, welche ich hier den Interessierten nicht vorenthalten will:
Gruss
Nick
Seite ‚index.html‘—
function abschicken(){
self.location.href=„verarbeiten.html?“+document.formular.elements[0].name+"="+document.formular.elements[0].value+"&"+document.formular.elements[1].name+"="+document.formular.elements[1].value+"&"+document.formular.elements[2].name+"="+document.formular.elements[2].value;
}
Seite ‚verarbeiten.html‘ —
x=window.location.search;
x=x.substr(1);
vars=x.split("&");
vardiv1=vars[0].split("=");
vardiv2=vars[1].split("=");
vardiv3=vars[2].split("=");
document.writeln(„Die erste Variable heißt „+vardiv1[0]+“ und hat den Wert „+vardiv1[1]+“.<br>“);
document.writeln(„Die zweite Variable heißt „+vardiv2[0]+“ und hat den Wert „+vardiv2[1]+“.<br>“);
document.writeln(„Die dritte Variable heißt „+vardiv3[0]+“ und hat den Wert „+vardiv3[1]+“.<br>“);
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
function abschicken(){
self.location.href=„verarbeiten.html?“+document.formular.elements[0].name+"="+document.formular.elements[0].value+"&"+document.formular.elements[1].name+"="+document.formular.elements[1].value+"&"+document.formular.elements[2].name+"="+document.formular.elements[2].value;
}
*lach* *aufmbodenkugel* *kringelvorlachen*
Hi Leute!
Äh, ein kleiner Hinweis: Das ist genau das, was ein submit mit der Methode GET völlig automatisch macht! Also in ACTION die HTML-Seite angeben, an die der Inhalt geschickt werden soll und als METHOD=„GET“ angeben und schon geht es ohne dieses Script.
Gruß
Benky
*grins*
*lach* *aufmbodenkugel* *kringelvorlachen*
Hi Leute!Äh, ein kleiner Hinweis: Das ist genau das, was ein submit mit
der Methode GET völlig automatisch macht! Also in ACTION die
HTML-Seite angeben, an die der Inhalt geschickt werden soll
und als METHOD=„GET“ angeben und schon geht es ohne dieses
Script.Gruß
Benky
*grins*
Hallo Benky!
Hoffentlich hast dich nicht unter den Boden *gekringelt* , du hast recht, das Skript im ersten File kann man sich sparen! - get macht das Selbe - Cool! - Wie kommst du darauf - in meinem ‚schlauen Buch‘ (oder SelfHTML) gibts keine solche Erklärungen. Gibts einen guten Tip?
Merci!
Gruss Nick
Noch eine Anmerkung… ganz das Selbe ist es nun doch nicht das get und das javascript, die get-methode funktioniert nur in Fromularen, die man abschickt (form action="…), das javascript, welches die Hidden-Felder ausliest, ist doch viel ‚universeller‘.
Nick
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Benky!
Hoffentlich hast dich nicht unter den Boden *gekringelt*,
du hast recht, das Skript im ersten File kann man sich sparen!
- get macht das Selbe - Cool! - Wie kommst du darauf - in
meinem ‚schlauen Buch‘ (oder SelfHTML) gibts keine solche
Erklärungen. Gibts einen guten Tip?
Schreib so ne HTML-Seite mit Formular (nicht eingebettet in ein Frameset) und schau dir einfach die URL an.
Noch eine Anmerkung… ganz das Selbe ist es nun doch nicht
das get und das javascript, die get-methode funktioniert nur
in Fromularen, die man abschickt (form action="…), das
javascript, welches die Hidden-Felder ausliest, ist doch viel
‚universeller‘.
???
Gruß
Benky
Noch eine Anmerkung… ganz das Selbe ist es nun doch nicht
das get und das javascript, die get-methode funktioniert nur
in Fromularen, die man abschickt (form action="…), das
javascript, welches die Hidden-Felder ausliest, ist doch viel
‚universeller‘.???
- Wo liegt das Problem ein Formular um die Felder zu bauen??
- Schau dir mal eine Seite mit Eingabefeldern ohne Formular
im Netscape an. Zumindest bis 4.7 geht das nicht, da
Eingabefelder ohne Formular keinen Sinn machen.- Wieso universeller?? Mit JavaScript kann man immer noch
alle Attribute des Formulars verändern! Andere URL, andere
Method, manipulation der Felder … und das Formular läßt
sich per JavaScript abschicken. Was ist also universeller???Gruß
Benky
Hallo Benko!
Zuerst mal Merci!
He! Wollte dir nicht die Laune verderben! Mein Unwissen mag daran schuld sein , bin noch nicht so bewandert in den labyrintischen Wegen des scriptierens
. So, man kann also die Methode get/post… mit Javascript ebenso mitgeben?
Meine Unwissenheit schlage mich nicht zu hart!
Hmmmm… dann gäbe es also einzig den Fall, dass man ein Formular mit ‚post‘ abschicken muss, aber gleichzeitig die Felder auf der nächsten page braucht? … oder nicht ? … oder… wie bringt man es fertig die Inhalte zweier Formulare an die nächste Page zu schicken ohne das Script, welches quasi die get-Methode imitiert? Oder bin ich da wieder aufm Holzweg? Jedenfalls habe ich was gelernt!
Danke!
Gruss
Nick
Hi Nick!
Hallo Benko!
Zuerst mal Merci!
He! Wollte dir nicht die Laune verderben!Mein Unwissen
mag daran schuld sein , bin noch nicht so bewandert in den
labyrintischen Wegen des scriptierens. So, man kann also
die Methode get/post… mit Javascript ebenso mitgeben?
Zum Laune verderben braucht es mehr als einen Newbie!!! ;o)
document.forms[0].method=„GET“;
document.forms[0].method=„POST“;
document.forms[0].action=„irgendwo.im.internet/liegt/eine/htmlseite.htm“;
document.forms[0].submit();
…
Meine Unwissenheit schlage mich nicht zu hart!
Hmmmm… dann gäbe es also einzig den Fall, dass man ein
Formular mit ‚post‘ abschicken muss, aber gleichzeitig die
Felder auf der nächsten page braucht? … oder nicht ? …
oder… wie bringt man es fertig die Inhalte zweier Formulare
an die nächste Page zu schicken ohne das Script, welches quasi
die get-Methode imitiert? Oder bin ich da wieder aufm Holzweg?
Jedenfalls habe ich was gelernt!
post braucht man, wenn der Inhalt vom Formular zu groß wird. Ich glaube die Grenze für get liegt ca. bei 32k (gilt aber auch für das Script). Allerdings hast du glaube ich recht (habs nicht versucht-aber find ich logisch), mit post verschickt kommst du an die Werte auf der Folgeseite nicht ran.
Da ist es dann sinnvoll als Folgeseite ein CGI-Skript anzugeben. Das kann eine bestehende Seite um die Übergabeparameter in Form von HIDDEN-Feldern erweitern.
Wenn du mit Frames arbeitest, dann kannst du dir das ganze sparen. Einfach in der Frameset-Seite ein Array für den Formularinhalt anlegen und vor jedem Seitenwechsel die aktuellen Werte dort merken. Die Folgeseite kann die Werte dann dort wieder auslesen. Das spart nebenbei bemerkt auch das ewige hin und herschicken der Daten.
Gruß
Benky