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

Kodeord


Reklame
Top 10 brugere
HTML
#NavnPoint
molokyle 11184
Klaudi 5506
bentjuul 3377
severino 2040
smorch 1950
strarup 1525
natmaden 1396
scootergr.. 1320
e.c 1150
10  miritdk 1110
Default submitbutton
Fra : Kristian Thy


Dato : 13-09-04 13:12

Jeg har en form med to submitknapper. Når den får fokus vælger den en af
knapperne som formens "default" submit-knap (altså den der vælges hvis
man skriver i et felt og trykker enter i stedet for eksplicit at trykke
på en af knapperne med musen). Det er tilsyneladende bare den knap der
kommer først på formen. Hvordan kan jeg styre at det skal være den anden
der er standardknappen? Jeg har prøvet at sætte tabindex='1' på den, men
det hjalp ikke ...

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

 
 
Erik Ginnerskov (13-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 13-09-04 19:42

Kristian Thy wrote:
> Jeg har en form med to submitknapper. Når den får fokus vælger den en
> af knapperne som formens "default" submit-knap (altså den der vælges
> hvis man skriver i et felt og trykker enter i stedet for eksplicit at
> trykke på en af knapperne med musen). Det er tilsyneladende bare den
> knap der kommer først på formen. Hvordan kan jeg styre at det skal
> være den anden der er standardknappen? Jeg har prøvet at sætte
> tabindex='1' på den, men det hjalp ikke ...

Byt om på knappernes rækkefølge i kildekoden. Så får du den ønskede
defaultvirkning uden yderligere fixfaxerier.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kristian Thy (13-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 13-09-04 20:42

Erik Ginnerskov uttered:
> Kristian Thy wrote:
>> Jeg har en form med to submitknapper. Når den får fokus vælger den en
>> af knapperne som formens "default" submit-knap (altså den der vælges
>> hvis man skriver i et felt og trykker enter i stedet for eksplicit at
>> trykke på en af knapperne med musen). Det er tilsyneladende bare den
>> knap der kommer først på formen. Hvordan kan jeg styre at det skal
>> være den anden der er standardknappen? Jeg har prøvet at sætte
>> tabindex='1' på den, men det hjalp ikke ...
>
> Byt om på knappernes rækkefølge i kildekoden. Så får du den ønskede
> defaultvirkning uden yderligere fixfaxerier.

Kan desværre ikke lade sig gøre. Hvilke fixfaxerier vil du så foreslå?


\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Erik Ginnerskov (13-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 13-09-04 21:05

Kristian Thy wrote:

>> Byt om på knappernes rækkefølge i kildekoden. Så får du den ønskede
>> defaultvirkning uden yderligere fixfaxerier.
>
> Kan desværre ikke lade sig gøre.

Hvis du har adgang til at indsætte noget kode i javascript eller serverside,
hvad hindrer dig så i at bytte om på knapperne?

> Hvilke fixfaxerier vil du så foreslå?

Jeg har ingen forslag ud over ovenstående.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kristian Thy (13-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 13-09-04 21:59

Erik Ginnerskov uttered:
> Hvis du har adgang til at indsætte noget kode i javascript eller serverside,
> hvad hindrer dig så i at bytte om på knapperne?

Som omtalt andetsteds¹ arbejder jeg med en side, om hvilken der bliver
klampet en header og en footer, som jeg kun med besvær kan ændre. At
flytte knappen fra footeren vil ødelægge stort set alle andre sider på
sitet.

Det er glæden ved at overtage spaghettikode.

>> Hvilke fixfaxerier vil du så foreslå?
>
> Jeg har ingen forslag ud over ovenstående.

Fordømt!

[1] http://groups.google.com/groups?th=165291b1f5fa05e2

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Allan Vebel (13-09-2004)
Kommentar
Fra : Allan Vebel


Dato : 13-09-04 21:05

Kristian Thy <thy@it.edu> skrev:

>> Byt om på knappernes rækkefølge i kildekoden. Så får
>> du den ønskede efaultvirkning uden yderligere fixfaxerier.
>
> Kan desværre ikke lade sig gøre. Hvilke fixfaxerier vil du
> så foreslå?

Vis os siden, så kommer der måske et forslag!

--
Allan Vebel
http://html-faq.dk



Kristian Thy (13-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 13-09-04 22:00

Allan Vebel uttered:
> Vis os siden, så kommer der måske et forslag!

Det kan jeg desværre ikke umiddelbart, men jeg vil prøve at lave et
minimalt mockup at teste på. I'll be back ...

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Kristian Thy (14-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-09-04 08:25

Allan Vebel uttered:
> Vis os siden, så kommer der måske et forslag!

En mockup kan beskues på http://quovadis.dk/formtest.html

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Martin Hintzmann And~ (14-09-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 14-09-04 10:24

Kristian Thy wrote:
> Jeg har en form med to submitknapper. Når den får fokus vælger den en af
> knapperne som formens "default" submit-knap (altså den der vælges hvis
> man skriver i et felt og trykker enter i stedet for eksplicit at trykke
> på en af knapperne med musen). Det er tilsyneladende bare den knap der
> kommer først på formen. Hvordan kan jeg styre at det skal være den anden
> der er standardknappen? Jeg har prøvet at sætte tabindex='1' på den, men
> det hjalp ikke ...
>

Det skal først siges at Opera (7.60) gør det rigtigt
Den bruger den næste submit knap udfra det felt der har fokus.


Den bedste løsning er nok at kontrollere på serversiden, hvor der er
udfyldt data og på basis af dette, gætte sig til, hvad bruger vil.


Men du har også mulighed for at lave et _grimt_ HTML-hack.
Du indsætter en image submit knap før den første knap og giver den en
1x1 transparent gif. Den vil så submit'e ved enter.
Ved denne løsning vil det dog se mærkeligt ud for tekst-, tale- og
mobile-browsere at der lige pludselig er en ekstra knap.


Alternativt kan du også vælge via javascript at disable submit ved enter
på form felterne. Du skal på samtlige form felter (ikke knapperne) ved
eventen onkeypress returnere false, hvis brugere trykker enter. Bruger
er så nød til enten at klikke på en af submit knapperne eller sætte
fokus på en af dem og trykke enter.

Du kan også gå videre med ovenstående og sætte en timeout som køre
eventen click på den anden submit knap (altså "btn2").

Ovenstående 2 løsninger virker selvfølgelig kun hvis javascript er
enabled, men HTML-koden vil ikke blive skæmmet med et hack.

Ingen af ovenstående løsninger er perfekte, men nu har du fået lidt at
vælge imellem.

--
Martin Hintzmann Andersen
http://www.hintzmann.dk/

Kristian Thy (14-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-09-04 10:30

Martin Hintzmann Andersen uttered:
> Det skal først siges at Opera (7.60) gør det rigtigt
> Den bruger den næste submit knap udfra det felt der har fokus.

Ja, der er jo _nogen_ browserudviklere der tænker sig om ...

> Den bedste løsning er nok at kontrollere på serversiden, hvor der er
> udfyldt data og på basis af dette, gætte sig til, hvad bruger vil.

God ide. Jeg vil dog stadig tro at jeg kunne have brugere der kunne
finde på at fylde data i begge dele af formen, selv om det
præsentationsmæssigt set ligner to forskellige dele af siden :)

> Men du har også mulighed for at lave et _grimt_ HTML-hack.
> Du indsætter en image submit knap før den første knap og giver den en
> 1x1 transparent gif. Den vil så submit'e ved enter.
> Ved denne løsning vil det dog se mærkeligt ud for tekst-, tale- og
> mobile-browsere at der lige pludselig er en ekstra knap.

Det er mindre vigtigt, da løsningen er skræddersyet til IE (gud bedre
det).

> Alternativt kan du også vælge via javascript at disable submit ved enter
> på form felterne. Du skal på samtlige form felter (ikke knapperne) ved
> eventen onkeypress returnere false, hvis brugere trykker enter. Bruger
> er så nød til enten at klikke på en af submit knapperne eller sætte
> fokus på en af dem og trykke enter.

Den tror jeg er købt.

> Du kan også gå videre med ovenstående og sætte en timeout som køre
> eventen click på den anden submit knap (altså "btn2").

Øh? Kan du forklare meningen med den nærmere?

> Ingen af ovenstående løsninger er perfekte, men nu har du fået lidt at
> vælge imellem.

Siden er absolut ikke perfekt i forvejen, så jeg pakker skruplerne ned i
rygsækken. Takker.

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Martin Hintzmann And~ (14-09-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 14-09-04 11:47

Kristian Thy wrote:
>
>>Det skal først siges at Opera (7.60) gør det rigtigt
>>Den bruger den næste submit knap udfra det felt der har fokus.
>
>
> Ja, der er jo _nogen_ browserudviklere der tænker sig om ...
>

Ja, jeg kan også bedst lide deres måde at håndtere det på.

>
>>Du kan også gå videre med ovenstående og sætte en timeout som køre
>>eventen click på den anden submit knap (altså "btn2").
>
>
> Øh? Kan du forklare meningen med den nærmere?
>

Nej, det kan jeg ikke for det var noget vrøvl.

Men, jeg har lavet en løsning, som emulerer Operas måde at håndtere
default submit knappen på.

http://www.hintzmann.dk/testcenter/js/defaultsubmit/default.html

Håber at du kan bruge det.

--
Martin Hintzmann Andersen
http://www.hintzmann.dk/

Kristian Thy (14-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-09-04 12:29

Martin Hintzmann Andersen uttered:
> Men, jeg har lavet en løsning, som emulerer Operas måde at håndtere
> default submit knappen på.
>
> http://www.hintzmann.dk/testcenter/js/defaultsubmit/default.html
>
> Håber at du kan bruge det.

Jeg skylder dig en wienerbasse. I mangel af bedre må du nøjes med en
credit i koden

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Kristian Thy (14-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-09-04 12:36

Martin Hintzmann Andersen uttered:
> Men, jeg har lavet en løsning, som emulerer Operas måde at håndtere
> default submit knappen på.
>
> http://www.hintzmann.dk/testcenter/js/defaultsubmit/default.html

Lige et hurtigt, opfølgende spørgsmål: Er fieldset'ene nødvendige for at
gruppere form-elementerne eller er de der bare for at tydeliggøre
grupperne? Så vidt jeg kan se i Javascriptet på siden bliver de ikke
refereret, men jeg kunne jo tage fejl ...

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Erik Ginnerskov (14-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 14-09-04 15:28

Kristian Thy wrote:

> Lige et hurtigt, opfølgende spørgsmål: Er fieldset'ene nødvendige for
> at gruppere form-elementerne eller er de der bare for at tydeliggøre
> grupperne?

Fieldset i en formular har en funktion:
Hvis siden skal kunne validere strict, må inputs i formularen ikke stå
uindpakkede. Inputs opfattes af validatoren som ren tekst, så der skal inde
i <form ... > </form> og uden om inputs og hvad der ellers er, sættes enten
div, p eller fieldset.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kristian Thy (14-09-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-09-04 10:40

Martin Hintzmann Andersen uttered:
> Alternativt kan du også vælge via javascript at disable submit ved enter
> på form felterne. Du skal på samtlige form felter (ikke knapperne) ved
> eventen onkeypress returnere false, hvis brugere trykker enter. Bruger
> er så nød til enten at klikke på en af submit knapperne eller sætte
> fokus på en af dem og trykke enter.

onkeypress="return false;" disabler _ikke_ enter i forms i IE. Har jeg
misforstået noget?

\\kristian
--
http://lpf.ai.mit.edu/Patents/knuth-to-pto.txt
http://home.att.net/~jbcole/humor/Microsoft_patents.htm

Martin Hintzmann And~ (14-09-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 14-09-04 11:38

Kristian Thy wrote:

>
> onkeypress="return false;" disabler _ikke_ enter i forms i IE. Har jeg
> misforstået noget?
>

Du skal sætte cancelBubble til true på eventen.


--
Martin Hintzmann Andersen
http://www.hintzmann.dk/

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

Månedens bedste
Årets bedste
Sidste års bedste