Avatar billede websphere Nybegynder
27. oktober 2000 - 19:52 Der er 20 kommentarer og
1 løsning

Formvalidering i netscape

Jeg har en HTML for som skal valideres, for at aktivere valideringen bruger jeg onload i en <input type=image>(se nedenfor).

Det virker fint i IE4+, men Netscape vil bare ikke. Hvis du ikke mener det er nedenstående det er galt med send en mail så skal jeg nok sende validerings scriptet.
mg@kloster-import.dk

<input type=\"image\" border=\"0\" name=\"koeb\" src=\"\" onClick=\"java script:
varset_end(this.document.buy);
if (verify  (this.document.buy)) {
  this.document.buy.submit();
} else {
  return false; }\">
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 19:57 #1
Du har jo ikke skrevet onLoad, men onClick.

Skal der valideres før formen submittes?

Det vil jo ske når billedet læses ind (angiveligt)
Avatar billede websphere Nybegynder
27. oktober 2000 - 19:59 #2
Sorry der skulle stå onClick.

Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 19:59 #3
Netscape ignorerer onClick på <img  ... >
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 20:00 #4
Skal der ikke valideres når der submittes
Avatar billede websphere Nybegynder
27. oktober 2000 - 20:01 #5
Jo, det er lige det der skal.
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 20:02 #6
Så plejer jeg at lave en onclick på submitknappen der siger onClick=\"return myValidation()\">

Hvis den returnerer false, vil submit bremses
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 20:06 #7
onClick=\"return myValidation()\">
fx:

<script language=Javascript>

function myValidation(f){
  valid = false
  varset_end(this.document.buy);
  if (verify  (this.document.buy)) valid = true
  return valid
  }

Jeg kender jo ikke valideringen, men det er et godt sted at placere det
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 20:12 #8
Du skrev jo heller ikke <img ... > i spørgsmålet, undskyld :o)

Geg går nu, kikker ind senere
Avatar billede erikjacobsen Ekspert
27. oktober 2000 - 20:18 #9
Du skal altid, altid, altid kalde en form-valideringsfunktion i <form>-tagget på en OnSubmit
hændelse. I mange tilfælde behøver man jo ikke trykke på submit-knappen eller image-knappen
for at sende noget af sted. Specielt i IE! Så noget i denne stil:

<form .... onsubmit=\"varset_end(this.document.buy); if (verify(this.document.buy)) { return true; } else {  return false; }\">
<input type=\"image\" border=\"0\" name=\"koeb\" src=\"\">
Avatar billede geeeet Nybegynder
27. oktober 2000 - 20:53 #10
...og hvis du ikke bruger onsubmit, så er det nemmere at lave submit-knappen som et alt. link...

<a href=\"java script:document.formnavn.submit();\"><img src=\"knap.gif border=\"0\"></a>

Så slipper du for at det ikke virker i netscape...

/Geeeet
Avatar billede erikjacobsen Ekspert
27. oktober 2000 - 21:04 #11
Alt det med forme og submit virker nu formidabelt i Netscape ;-)
Avatar billede geeeet Nybegynder
27. oktober 2000 - 21:06 #12
erik >> jeps, men dog ikke tabindex, som jeg gerne vill have til at virke :-) Eller er det bare mig der ikke kan kode ?!?

/Geeeet
Avatar billede erikjacobsen Ekspert
27. oktober 2000 - 21:08 #13
Jeg tror du har gode chancer i NS6. Det er jo begrænset hvad man kan forlange af
en ældre browser som NS4.5.
Avatar billede geeeet Nybegynder
27. oktober 2000 - 21:09 #14
Så sandt, så sandt... jeg tror min browser er ældre end mig, næsten :-) [nn4.03, 1997]

/Geeeet
Avatar billede ldanielsen Nybegynder
27. oktober 2000 - 23:43 #15
Hejsa.

Vi glemmer at svare på spøgsmålet:

Der er to fejl:

Der skal ikke bruges =\"java script:blabla()\" på onClick.

Og i dette tilfælde skal onClick ALTID RETURNERE false!!! Fordi formen udtrykkeligt submittes i functionen.

Derfor virker det ikke, hvis det virker i IE, så er det fordi den er latterligt fejltolerant.

Og derfor synes jeg mit forslag er bedre: (se kl 20:06:44)

Avatar billede erikjacobsen Ekspert
28. oktober 2000 - 00:44 #16
Men, ldanielsen, antag at formen har et almindeligt tekstfelt foruden denne knap.
Hvis brugeren i IE (og sommetider i NS) trykker retur i dette felt, sendes formen
afsted, men ganske og aldeles uden validering. Derfor mener jeg, hvad jeg skrev
kl. etellerandet. ;-)
Avatar billede ldanielsen Nybegynder
28. oktober 2000 - 00:48 #17
erikjacobsen >> Du har helt ret, jeg sover!
Avatar billede erikjacobsen Ekspert
28. oktober 2000 - 00:52 #18
Det burde du også... Men tak fordi du huske at forklare hvorfor (det med java script:),
for det er jo ganske korrekt, og det havde jeg glemt. I On-hvadsomhelst ér man
allerede i JavaScript-tilstanden, og det er i bedste fald overflødigt at skrive, og i værste
fald forkert. En ganske anden sag i en  href  , hvor det jo ikke normalt er JavaScript - der
er det overmåde nødvendigt.
Avatar billede geeeet Nybegynder
28. oktober 2000 - 13:53 #19
Og det med at enter virker som submit, sker kun når formen kun har et enkelt felt, mener jeg...

/Geeeet
Avatar billede websphere Nybegynder
26. november 2000 - 18:09 #20
Jeg selv løst problemet, problemet var længere nede i min kode, men jeg vil gerne sige tak for de super hurtige svar. Og jeg ville meget gerne kunne dele de udlovede point i mellem jer, men jeg tror ikke det er muligt.

//MG
Avatar billede websphere Nybegynder
26. november 2000 - 18:10 #21
Hmm, Problemet er ikke ovenstående men var længere inde i selve formvalideringen.

Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester