"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

HTML: Merkwürdiges target - Verhalten.

Frys_Assassin 29.10.2003 - 00:07 960 22
Posts

grOOvekill@

Legend
Vienna Badass
Avatar
Registered: Nov 2001
Location: @home
Posts: 2301
Yep, so funktioniert es auch! Die Varibale name darf also nicht global sein, oder wie? Find' ich echt krass, daß sich sowas auf das gesamte Frameset auswirkt! :confused:

Code: PHP
function Begruessung(){
var name = GetCookie("name");
if (name != "") document.write("Hallo, " + name + "! Geben Sie Ihre Daten erneut ein:"); 
else document.write("Geben Sie Ihre Daten ein:");
}

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Wenn du vor "var name" alert(name) einbaust, was sagt dir der Browser? Hast du die moeglichkeit das zu pruefen?

grOOvekill@

Legend
Vienna Badass
Avatar
Registered: Nov 2001
Location: @home
Posts: 2301
Meinst du so?
Code: PHP
function Begruessung(){
alert(name);
var name = GetCookie("name");	  
if (name != "") document.write("Hallo, " + name + "! Geben Sie Ihre Daten erneut ein:"); 
else document.write("Geben Sie Ihre Daten ein:");
}

Da poppt das Alert Ding auf und drin steht 'undefined'. Und wenn ich es nach der var name Zeile einfüge poppt die Alert Meldung ohne Inhalt auf.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Ok; anders: Kannst du, ohne "var name" vor und nach "name = GetCookie("name");" alert(window.name) machen? Ich vermute er setzt diese Variable was ev. die Dinge erklaeren _koennte_.

grOOvekill@

Legend
Vienna Badass
Avatar
Registered: Nov 2001
Location: @home
Posts: 2301
Aaah, verstehe. Was sagst'n des net gleich? :D
Also das Popup vor GetCookie sagt 'content' und das danach ist einfach leer. War das die Antwort, die du gesucht hast?

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
So in etwa, ja.

Dadurch ist alles klar und es liegt ein klassischer Fehler zwischen Sessel und Tastatur vor.

Nicht deklarierte Javascript-Variablen werden automatisch immer als global und somit als Teil des window-Objektes angesehen. Bestehende Variablen (window-Properties) werden einfach ueberschrieben; und genau das ist hier passiert.

Das laxe Design von Javascript laesst solche Fehler leicht zu; desshalb Variablen in Javascript immer mit var vorher deklarieren. Nur wer weiss was er tut kanns weglassen; was hier aber nicht der Fall war :)

Frys_Assassin

information keeper
Avatar
Registered: Oct 2001
Location: New New York
Posts: 2503
bussi @ grOOvekill@ !
soweit dass ich die begrüßung als fehler isoliert hab war ich eh schon, hätt jetzt am abend begonnen variblen umzubennen weil ich mir sowas in der art dachte. aber die arbeit hast du mir jetzt abgenommen :cool:

wah, im endeffekt hat ja nur ein "var " gefehlt. herzlichen dank.

aber ich finds funny dass sich meine 2 informatiklehrer noch weniger ausgekannt haben als ich :D


Zitat von Rektal
So in etwa, ja.

Dadurch ist alles klar und es liegt ein klassischer Fehler zwischen Sessel und Tastatur vor.

Nicht deklarierte Javascript-Variablen werden automatisch immer als global und somit als Teil des window-Objektes angesehen. Bestehende Variablen (window-Properties) werden einfach ueberschrieben; und genau das ist hier passiert.

Das laxe Design von Javascript laesst solche Fehler leicht zu; desshalb Variablen in Javascript immer mit var vorher deklarieren. Nur wer weiss was er tut kanns weglassen; was hier aber nicht der Fall war :)

danke für die rosen, aber pebkac is mir doch ein bisserl zu hart ;)
mir war das verhalten so merkwürdig dass ich auf den ersten blick net wirklich einen fehler lokalisieren konnte.
aber jetzt is alles klar.

mah, diese wischiwaschi sprache von JScript... hoffentlich mach mal bald was gscheiteres :)

trotzdem danke an alle :ghug: (verdammt geht net ;))

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Kannst deine Lehrer zwecks Aufklaerung ja mal vorbeischicken :D
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz