/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
events og Netscape
Fra : Chrisser


Dato : 20-11-03 14:42

Jeg fik engang hjælp til en glimrende måde at lave en eventlistener på som
også Netscape kunne forstå:

document.onkeyup = checkKey;
function checkKey(e) {
var code;
if (!e) var e = window.event;
if (e.keyCode) code = e.keyCode;
else if (e.which) code = e.which;
if (code == 13)
opdat('<%=sel%>','<%=afd%>','<%=rum%>','<%=kvm%>','Logind','<%=kald%>');
}

Nu vil jeg gerne vide hvordan jeg overfører denne forståelse til en funktion
der kaldes på en event fra et inputfelt, eks. nedenstående:
<input type="text" name="navn" onblur="testNavn('hans');">

function testNavn(navn){
if(navn != event.srcElement.value) alert('forkert du');
event.srcElement.value = '';
}

Mvh
Christina



 
 
Lasse Reichstein Nie~ (20-11-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 20-11-03 16:21

"Chrisser" <invalid@invalid.invalid> writes:

> document.onkeyup = checkKey;
> function checkKey(e) {
> var code;
> if (!e) var e = window.event;
....
> Nu vil jeg gerne vide hvordan jeg overfører denne forståelse til en funktion
> der kaldes på en event fra et inputfelt, eks. nedenstående:
> <input type="text" name="navn" onblur="testNavn('hans');">

Det virker ikke. Du sender ikke eventen med til funktionen, og hvis det
ikke er IE, så betyder det at funktionen ikke kan se eventen overhovedet.
(IE har som bekendt "event" som global variabel).

> function testNavn(navn){
> if(navn != event.srcElement.value) alert('forkert du');

Du bruger heller ikke eventen til andet end at finde det element den sidder
på. Det kan gøres nemmere.

> event.srcElement.value = '';
> }

Prøv
function testNavn(source,navn) {
...
}
og
onblur="testnavn(this,'hans');"


/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Chrisser (21-11-2003)
Kommentar
Fra : Chrisser


Dato : 21-11-03 08:19

Lasse Reichstein Nielsen wrote:
> Det virker ikke. Du sender ikke eventen med til funktionen, og hvis
> det
> ikke er IE, så betyder det at funktionen ikke kan se eventen
> overhovedet. (IE har som bekendt "event" som global variabel).

Nej det vidste jeg godt ( altså at det ikke virker i andet end IE )

> Prøv
> function testNavn(source,navn) {
> ...
> }
> og
> onblur="testnavn(this,'hans');"

Hmm, nu sidder jeg og flover mig lidt, jeg fokuserede vist lidt rigeligt på
event-objektet og lige pludselig gjorde jeg det mere indviklet end det
behøver være....

Tak
Chrisser



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste