/ 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
Test form med javascript
Fra : Denn!s H


Dato : 09-02-04 14:59

Hej

Lidt i tvivl om denne her skulle i ris+ros eller browsergruppen eller ...


Men jeg har en formular med et tilhørende JavaScript.
Jeg kunne godt tænke mig at vide om der er browsere hvor tjek af formularen
ikke virker.
Er også interesseret i at vide om det virker på en Mac.

www.skanderborgmtb.dk/test_form.htm

--
Hilsen
Denn!s



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


Dato : 09-02-04 17:25


"Denn!s H" <@> skrev

> Lidt i tvivl om denne her skulle i ris+ros eller browsergruppen eller ...

ris+ros er i dette tilfælde ikke den rigtige gruppe. Men denne næppe heller.
Prøv i

news:dk.edb.internet.webdesign.html

--
Med venlig hilsen
Erik Ginnerskov
http://www.hjemmesideskolen.dk - http://www.html-faq.dk
http://hjem.get2net.dk/egin



Denn!s H (09-02-2004)
Kommentar
Fra : Denn!s H


Dato : 09-02-04 17:46


"Erik Ginnerskov" <eginNOSPAM@html-faq.dk> skrev i en meddelelse
news:c08c8f$m1b$1@sunsite.dk...
>
> ris+ros er i dette tilfælde ikke den rigtige gruppe. Men denne næppe
heller.
> Prøv i
>
> news:dk.edb.internet.webdesign.html

Hej Erik

Jeg ønsker ikke kommentarer til min HTML.

--
mvh
Denn!s



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


Dato : 09-02-04 17:54


"Denn!s H" <@> skrev

> > Prøv i
> >
> > news:dk.edb.internet.webdesign.html
>
> Jeg ønsker ikke kommentarer til min HTML.

Nej, men eventuel fejlfunktion i en formular sorterer under html.

--
Med venlig hilsen
Erik Ginnerskov
http://www.hjemmesideskolen.dk - http://www.html-faq.dk
http://hjem.get2net.dk/egin



Lasse Reichstein Nie~ (09-02-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 09-02-04 18:43

"Erik Ginnerskov" <eginNOSPAM@html-faq.dk> writes:

> Nej, men eventuel fejlfunktion i en formular sorterer under html.

Helt uenig. Den laves i Javascript, og bør diskuteres her. Selve HTML'en
for en formular er (næsten) triviel, men valideringen kan godt være
lidt mindre banal.

jeg vil dog altid starte med at falde tilbage på design-fasen: Før man
kan lave en valideringsfunktion, så skal man have besluttet, helt
præcist, hvad der skal accepteres, og hvad der ikke skal. Hvis man
ikke kan sige det med ord, så er man ikke klar til at skrive
funktionen alligevel.

/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.'

Lasse Reichstein Nie~ (09-02-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 09-02-04 18:40

"Denn!s H" <@> writes:

> Men jeg har en formular med et tilhørende JavaScript.
> Jeg kunne godt tænke mig at vide om der er browsere hvor tjek af formularen
> ikke virker.

Hvis du kører windows, så er der er ikke nogen god undskyldning for
ikke selv at tjekke i IE 4-6, Netscape 4, Opera 6+7, og Mozilla(Gecko).

IE 3-5.5 stand-alone:
<URL:http://www.quirksmode.org/browsers/multipleie.html>
Netscape 4:
<URL:ftp://archive.netscape.com/archive/communicator/4.08/english/windows/windows95_or_nt/navigator_standalone/n32d408.exe>
Opera:
<URL:ftp://ftp.opera.com/pub/opera/win/723/en/std/ow32enen723.exe>
(deres ftp opfører sig underligt lige nu, så jeg kan ikke finde en
Opera 6 URL).
Mozilla FireFox/(aka. Gecko, aka. Netscape 7-ækvivalent)
<URL:http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/0.8/FirefoxSetup-0.8.exe>

> Er også interesseret i at vide om det virker på en Mac.

Det afhænger jo nok af browseren. Hvis det virker i Mozilla til
Windos, så virker det også i Mozilla til Mac (eller en anden
Gecko-browser). De browsere til Mac som det er mest interessant at
teste i, er IE 5/Mac og Safari. Andre Mac-browsere er Opera 6 og
iCab. Jeg ville også gerne have mulighed for det :)

> www.skanderborgmtb.dk/test_form.htm

Lad mig se på javascript-koden ...

Ick. Det er helt vanvittigt indenteret når jeg ser det med en
fast-bredde-font. Enten er det fordi vi bruger forskellige tab-indrykning
eller fordi du bruger en proportional-font, men grimt det er det.

Ang. e-mail (det er en personlig hobby at være efter e-mail-tjek :)

Du er *alt* for restriktiv i hvad du accepterer som e-mail-adresse!
Untagelserne er selvfølgeligt sjældne, men hvorfor så ikke tillade dem?

Du accepterer kun en eller to punktummer i domænedelen. Der kan være
flere.

Du accepterer kun to-fire tegn i toplevel-domænet. Selvom det virker nu,
så kan det jo sagtens ændre sig når der kommer flere (og det er ikke
et præfiks - hvis noget er det et suffiks!).

Du tager ikke højde for punktum i navnet (fx Gilbert.Bates@example.org).
Det bruges faktisk.

Du udelukker æ, ø og å, selvom www.øl.dk nu er lovlig.

Du udelukker email-adresser på formen
myself@[example.com]
eller
myself@[127.0.0.1]
som er lovlige, omend sjældne (og måske, efter overvejelse, kan
argumenteres for ikke at skulle accepters).

.... og alle dine mange tests kan klares med et simpelt regexp,

/^([\w]+[.\-])*\w@([\w\-]\.)+\w{2,4}$/

(hvor jeg ville udelade 4-tallet).

Ang. navnet: Du tillader kun a-z+æ-å. Det vil hr. Süsmann og
Hans Jensen d. III nok blive trætte af. Folk kan sagtens hedde
noget med udenlandske bogstaver i.

Du tilgår formen via
document.formmaillist.email...
Jeg ville, for at være helt sikker, bruge
document.forms['formmaillist'].elements['email']
Det er korrekt i følge W3C DOM 1 og 2, mens din metode ikke er (browsere
accepterer den oftest, men hellere være helt sikker).

Du skriver
var strBeta0= form.betalingsmåde[0].checked;
men bruger senere strBeta0 som
if (strBeta0 == '' && ...
Det er dårlig stil. På det tidspunkt er strBeta0 enten true eller false,
og ikke en streng. Du overlever på at den tomme streng tester lig med false.
Jeg vil foreslå:
if (!strBeta0 && ...)
(og jeg ville kalde den noget andet end "str" foran, samme for
strBeta{1,2} og strDist{0,1}).

ALT I ALT: Jeg kan ikke se noget der burde give problemer med andre
browsere, men der er en del der kunne strammes op på.
Så, her fik du .clientside's version af ris+ros :)

/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.'

Denn!s H (09-02-2004)
Kommentar
Fra : Denn!s H


Dato : 09-02-04 23:16

"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:wu6w5eyo.fsf@hotpop.com...
>
> Hvis du kører windows, så er der er ikke nogen god undskyldning for
> ikke selv at tjekke i IE 4-6, Netscape 4, Opera 6+7, og Mozilla(Gecko).
Har tjekket med IE5.5, Mozilla 1.6, Opera 7.23 og FireBird 0.7

> teste i, er IE 5/Mac og Safari. Andre Mac-browsere er Opera 6 og
Lige Safari kunne jeg godt tænke mig at se.

> Lad mig se på javascript-koden ...
> Ick. Det er helt vanvittigt indenteret når jeg ser det med en
> fast-bredde-font. Enten er det fordi vi bruger forskellige tab-indrykning
> eller fordi du bruger en proportional-font, men grimt det er det.
Kan du ikke forklare det på en anden måde, ejg ved ikke hvad du mener.
Nåh, okay det er fordi min editor bruger Verdana.

> Ang. e-mail (det er en personlig hobby at være efter e-mail-tjek :)
> Untagelserne er selvfølgeligt sjældne, men hvorfor så ikke tillade dem?
Jeg mener(-te) at jeg tillod det man måtte skrive.

> Du accepterer kun en eller to punktummer i domænedelen. Der kan være
> flere.
Kunen kun lige komme i tanke om @post.tele.dk
Men den kan jeg let forhøje

> Du accepterer kun to-fire tegn i toplevel-domænet. Selvom det virker nu,
> så kan det jo sagtens ændre sig når der kommer flere (og det er ikke
> et præfiks - hvis noget er det et suffiks!).
Så lærte jeg igen noget nyt :)

> Du tager ikke højde for punktum i navnet (fx Gilbert.Bates@example.org).
> Det bruges faktisk.
Jeg tillader lige så mange punktummer i navnet som man ønsker.

> Du udelukker æ, ø og å, selvom www.øl.dk nu er lovlig.
For en måned siden spurgte jeg i en anden gruppe om der var /kom e-mail
adresser med æøå.
De fleste mente der gik et stykke tid før det var brugbart.

> Du udelukker email-adresser på formen
> myself@[example.com]
> eller
> myself@[127.0.0.1]
> som er lovlige, omend sjældne (og måske, efter overvejelse, kan
> argumenteres for ikke at skulle accepters).
Dem har jeg aldrig stødt på, viste ikke det fantes.

> ... og alle dine mange tests kan klares med et simpelt regexp,
> /^([\w]+[.\-])*\w@([\w\-]\.)+\w{2,4}$/
Det var første gang jeg skulle lave en email tjekker, så jeg gik systematisk
og slavisk tilværks.

> (hvor jeg ville udelade 4-tallet).
Okay!

> Ang. navnet: Du tillader kun a-z+æ-å. Det vil hr. Süsmann og
> Hans Jensen d. III nok blive trætte af. Folk kan sagtens hedde
> noget med udenlandske bogstaver i.
Ja, du har ret. Måske jeg bare skulle droppe at teste på bogstaver(?) i
navnet.

> Du tilgår formen via
> document.formmaillist.email...
> Jeg ville, for at være helt sikker, bruge
> document.forms['formmaillist'].elements['email']
> Det er korrekt i følge W3C DOM 1 og 2, mens din metode ikke er (browsere
> accepterer den oftest, men hellere være helt sikker).
Nyt igen :)

> Du skriver
> var strBeta0= form.betalingsmåde[0].checked;
> men bruger senere strBeta0 som
> if (strBeta0 == '' && ...
> Det er dårlig stil. På det tidspunkt er strBeta0 enten true eller false,
> og ikke en streng. Du overlever på at den tomme streng tester lig med
false.
> Jeg vil foreslå:
> if (!strBeta0 && ...)
> (og jeg ville kalde den noget andet end "str" foran, samme for
> strBeta{1,2} og strDist{0,1}).
Det forstår jeg godt, "strBeta0 == true" går jeg ud fra så også må due.

> ALT I ALT: Jeg kan ikke se noget der burde give problemer med andre
> browsere, men der er en del der kunne strammes op på.
> Så, her fik du .clientside's version af ris+ros :)
ha, ha

MANGE MANGE tak Lasse fordi du gav dig tid til at se på min kode.

--
Med venlig hilsen
Denn!s



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

Månedens bedste
Årets bedste
Sidste års bedste