FAQ |
Kalender |
2007-03-09, 12:03 | #1 | ||
|
|||
Medlem
|
På en sida med ett stort antal formulärrutor att fylla i (<input type="text" ...>) skulle det vara praktiskt att kunna använda enter för att flytta till nästa ruta istället för tab. I detta fall är det enbart siffror som ska fyllas i, och tabknappen sitter ju rätt långt bort från den numeriska delen på tangentbordet. Att kunna använda enter skulle snabba upp inmatningen rejält och den skulle kunna utföras med en hand.
Jag googlade lite och hittade dels ett förslag som jag inte fick att funka alls: Kod:
<body onKeyDown="if (event.keyCode==13) {event.keyCode=9; return event.keyCode }"> Kod:
<input type="text" name="t1" size="10" onChange="t2.select();"> <input type="text" name="t2" size="10" onChange="t3.select();"> <input type="text" name="t3" size="10" onChange="t1.select();"> Kod:
[Exception... "'Nekades tillstånd att sätta egenskap XULElement.selectedIndex' when calling method: [nsIAutoCompletePopup::selectedIndex]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "JS frame :: file:///F:/test.html :: onchange :: line 1" data: no] Hur kan man få detta att fungera även i Explorer? |
||
Svara med citat |
2007-03-09, 12:35 | #2 | |||
|
||||
Flitig postare
|
Det du behöver göra är att fixa en funktion istället och där använda dig av en IE-fix för att läsa in events. Du anropar sedan den från varje input-element med onChange...
Kod:
funktionensNamn(e) { if(!e) var e = window.event; // IE-Fix blablablabla kolla vilken knapp som är tryckt osv med keycode... } |
|||
Svara med citat |
2007-03-09, 12:49 | #3 | ||
|
|||
Medlem
|
Citat:
Får fortsätta experimentera med detta. |
||
Svara med citat |
2007-03-09, 13:32 | #4 | |||
|
||||
Medlem
|
Kod:
<input type="text" name="c1" onKeyDown="if (event.keyCode==13) { c2.focus(); }" /> <br /> <input type="text" name="c2" onKeyDown="if (event.keyCode==13) { c3.focus(); }" /> <br /> <input type="text" name="c3" onKeyDown="if (event.keyCode==13) { c1.focus(); }" /> <br /> |
|||
Svara med citat |
2007-03-10, 22:51 | #5 | |||
|
||||
Mycket flitig postare
|
annars borde det gå att leka med onsubmit på formuläret. För ett enterslag resulterar ju ofta i en submit, och att hålla koll på vilket input-element som användes senast (för att veta vilket man ska hoppa till) är ju inga konstigheter.
Men ditt problem kanske redan är löst. |
|||
Svara med citat |
Svara |
|
|