|
| Sende en tab Fra : Chrisser |
Dato : 29-03-06 09:08 |
|
Hej
Er det muligt, fra javascript, at sende en "tab-kommando" ?
- jeg skal lave en form med en del felter hvor enter skal kunne bruges i
stedet for tab og jeg vil gerne undgå at skulle kode mine felter så jeg er
afhængig af rækkefølgen og besværet der så vil opstå hvis jeg senere skal
lægge et ekstra felt ind midt mellem de andre.
Jeg kan fange min enter men mangler jo så at kunne sende en tab i stedet...
- hvis det eventuelt kun kan lade sig gøre i VBScript i stedet kan det godt
gå an.
Mvh
Chrisser
| |
Kasper Lindberg (29-03-2006)
| Kommentar Fra : Kasper Lindberg |
Dato : 29-03-06 09:31 |
|
"Chrisser" <cbj@egdatainform.dk> skrev i en meddelelse
news:442a4099$0$15794$14726298@news.sunsite.dk...
> Hej
>
> Er det muligt, fra javascript, at sende en "tab-kommando" ?
> - jeg skal lave en form med en del felter hvor enter skal kunne bruges i
> stedet for tab og jeg vil gerne undgå at skulle kode mine felter så jeg er
> afhængig af rækkefølgen og besværet der så vil opstå hvis jeg senere skal
> lægge et ekstra felt ind midt mellem de andre.
>
> Jeg kan fange min enter men mangler jo så at kunne sende en tab i
> stedet...
>
nu ved jeg ikke lige hvordan din side er opbygget, men en tab har
ascii-værdi 9, så når du fanger en [ENTER] så indsæt ascii-værdi 9 i stedet
var tab=String.fromCharCode(9)
/Kasper
| |
Chrisser (29-03-2006)
| Kommentar Fra : Chrisser |
Dato : 29-03-06 10:02 |
|
"Kasper Lindberg" <NoSp@m.invalid> skrev i en meddelelse
news:442a45dd$0$15788$14726298@news.sunsite.dk...
> nu ved jeg ikke lige hvordan din side er opbygget, men en tab har
> ascii-værdi 9, så når du fanger en [ENTER] så indsæt ascii-værdi 9 i
> stedet
>
> var tab=String.fromCharCode(9)
Hmm, den er jeg simpelthen ikke sikker på at jeg forstår, det med ascii kan
jeg
forstå, men hvordan får jeg den sendt afsted så cusoren på skærmen
rent faktisk flytter sig ? Jeg skal vel på en eller anden måde få den
rigtige
event fyret af, øh, sådan lidt manuelt kunne man måske sige ??
Chrisser
| |
Kasper Lindberg (29-03-2006)
| Kommentar Fra : Kasper Lindberg |
Dato : 29-03-06 16:32 |
|
"Chrisser" <cbj@egdatainform.dk> skrev i en meddelelse
news:442a4d41$0$15786$14726298@news.sunsite.dk...
>
> "Kasper Lindberg" <NoSp@m.invalid> skrev i en meddelelse
> news:442a45dd$0$15788$14726298@news.sunsite.dk...
>> nu ved jeg ikke lige hvordan din side er opbygget, men en tab har
>> ascii-værdi 9, så når du fanger en [ENTER] så indsæt ascii-værdi 9 i
>> stedet
>>
>> var tab=String.fromCharCode(9)
>
> Hmm, den er jeg simpelthen ikke sikker på at jeg forstår, det med ascii
> kan jeg
> forstå, men hvordan får jeg den sendt afsted så cusoren på skærmen
> rent faktisk flytter sig ? Jeg skal vel på en eller anden måde få den
> rigtige
> event fyret af, øh, sådan lidt manuelt kunne man måske sige ??
For at svare på det, skal jeg se hvad du laver....
link please.
/Kasper
| |
Chrisser (30-03-2006)
| Kommentar Fra : Chrisser |
Dato : 30-03-06 07:29 |
|
"Kasper Lindberg" <NoSp@m.invalid> skrev i en meddelelse
news:442aa86b$0$15794$14726298@news.sunsite.dk...
>>> var tab=String.fromCharCode(9)
>>
>> Hmm, den er jeg simpelthen ikke sikker på at jeg forstår, det med ascii
>> kan jeg
>> forstå, men hvordan får jeg den sendt afsted så cusoren på skærmen
>> rent faktisk flytter sig ? Jeg skal vel på en eller anden måde få den
>> rigtige
>> event fyret af, øh, sådan lidt manuelt kunne man måske sige ??
>
> For at svare på det, skal jeg se hvad du laver....
>
> link please.
Beklager - selv om jeg havde lavet noget af det på nuværende tidspunkt så er
det et internt system jeg sidder og arbejder på og det ville tage en hel del
tid at
strippe koden nok til at jeg kunne lægge noget af det ud.
Det korte af det lange er at jeg ender op med at have en form med x antal
felter hvor det skal være sådan at man i felterne kan bruge enter som tab -
altså man skriver hej i et felt og trykker på enter og så flytter cusoren
sig til
næste felt...nøjagtig som ved tab...
Jeg kan godt kode mig ud af det på den besværlige måde - altså med at holde
styr på hvilket felt jeg står i og hvilket felt jeg skal hoppe til som det
næste
med en focus(), men det ville være så fedt om man istedet "bare" kunne gå
ind
og fange enventen på en keyup og sige at hvis jeg stod i et inputfelt så
erstattede jeg den event med en tab og så lade det gå efter den almindelige
tabrækkefølge....
Dermed skal jeg bare lægge funktionaliteten på én gang og så kan den
passe sig selv uanset at jeg lægger nye felter på eller bytter rundt på
rækkefølgen af felterne.
Mvh
Chrisser
| |
Chrisser (30-03-2006)
| Kommentar Fra : Chrisser |
Dato : 30-03-06 08:31 |
|
"Chrisser" <cbj@egdatainform.dk> skrev i en meddelelse
news:442a4099$0$15794$14726298@news.sunsite.dk...
> Er det muligt, fra javascript, at sende en "tab-kommando" ?
> - jeg skal lave en form med en del felter hvor enter skal kunne bruges i
> stedet for tab og jeg vil gerne undgå at skulle kode mine felter så jeg er
> afhængig af rækkefølgen og besværet der så vil opstå hvis jeg senere skal
> lægge et ekstra felt ind midt mellem de andre.
Løsningen er åbenbart simpelt idet det kan lade sig gøre at udskrifte
keyCode,
pt. virker det fint hvis jeg kalder funktionen fra onkeydown på et
inputfelt:
function sendTab() {
var key = event.keyCode;
if (key == 13)event.keyCode=9 ;
}
<html> osv...
<input type="text" name="test" onkeydown="sendTab();">
Mvh
Chrisser
| |
Chrisser (30-03-2006)
| Kommentar Fra : Chrisser |
Dato : 30-03-06 08:50 |
|
"Chrisser" <cbj@egdatainform.dk> skrev i en meddelelse
news:442b894f$0$15785$14726298@news.sunsite.dk...
> Løsningen er åbenbart simpelt idet det kan lade sig gøre at udskrifte
> keyCode,
> pt. virker det fint hvis jeg kalder funktionen fra onkeydown på et
> inputfelt:
Og den sansynligvis endelige løsning er følgende script - og dermed
ingenting på selve felterne :
<script type="text/javascript">
<!--
document.onkeydown = sendTab;
function sendTab() {
var inputtype = event.srcElement.type;
var key = event.keyCode;
if (key == 13){
if(inputtype=='text' || inputtype=='select-one' || inputtype=='checkbox'){
event.keyCode=9;
}
}
}
</script>
| |
|
|