16. august 2007 - 08:12Der er
23 kommentarer og 1 løsning
Firefox' ignorering af events i inputfelt
Hej!
Jeg laver et login-system for en ven, og der er en funktion der ved onkeyup på passwordfeltet checker om den pressede tast har keyCode 13, altså enter. Problemet er at den ikke virker i Firefox, men perfekt i Internet Explorer. Hvad kan problemet være? Jeg er 99% sikker at det ikke er min kode det er galt med, funktionen som trigges ved onkeypress indeholder en alert. Formen ser således ud: (jeg har også indsat alerts i events'ne for at sikre mig helt)
Virksomheder er på vej fra store sprogmodeller, der svarer på spørgsmål, til AI-agenter, der kan udføre opgaver på egen hånd. Det gør teknologien mere nyttig – og langt mere risikabel.
MEn den burde alligevel alerte ved inputændring, og pointen i mit system er faktisk at den checker om pw er korrekt efter hver enkelt tegn, og ikke kun enter.
Men jeg fatter stadig ikke hvad der er galt i den gode gamle <input onkeyup="foo()">? FF kræver vel ikke at det skal gøres indlejret i <script> med w3c funktioner?
Tak for linket montago.. Men hvis jeg opretter en tom html-side og indsætter <input onkeypress="alert()"> i bodyen så virker det ikke i FF, men kun IE.. Hvad kan der være galt?
Der er voldsom forskel på onkeydown og onkeypress. Dels er der forskel på, hvilke koder, der returneres i EVENT.keycode - og dels kan FF ikke disable default-handlingen ved onkeypress. Brug onkeydown i stedet. Til gengæld skal der ikke checkes for 10 ... 13 er det, der returneres i keyCode ved 'Return' ;o)
Jeg har dog absolut ingen idé om, hvorfor du går denne omvej. Hvorfor ikke bare submitte formen? =)
ole-> det er fordi jeg har lavet dette dejlige lidt fancy system hvor man ikke behøver at trykke Enter, men bare bliver "dirigeret videre" uden at trykke enter når man har indtastet korrekt pw.
Jeg har nu prøvet at lave en tom side med <input onkeydown="alert();">, men der sker stadig intet! Jeg fatter det ikke. Er det min firefoxversion det er galt med? Det er 1.5.08.
-så det er ikke specielt Enter der skal checkes for, og checkKey burde egentlig hedde checkPw, da den sammenligner de 4 første cifre i den dekrypterede kode (som er destinationen til den hemmelige side) (som dekrypteres med passwordet) med en 'magic value'.
Jamen, hvorfor dog også forvirre brugeren? Hvorfor skal dit system virke anderledes end alle andre logins på WWW? Er det ikke modsætningen til brugervenlighed? =)
Hvis ikke du kan få <input onkeydown="alert('Noget')"> til at virke, må du lægge et link - for så laver du andre fejl
Det virker fint i min Firefox 1.5.0.12 - men det er til at vide med FF. Der kommer jo en patch 'hver fjerde time' - og de har det med at introducere nye fejl, når en gammel rettes :o|
Jeg droppede keyevents'ne i FF og besluttede at det var nok at klikke på enter.. Men jeg synes at olebole's og montago's svar har været brugbare, så læg et svar begge to, så deler i points'ne.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.