login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Alle inputs valideren (vervolg)

Offline Pellens - 30/07/2009 16:45
Avatar van PellensPHP interesse Beste,

ik heb een form validatie, de onderstaande manier werkt perfect in FF, maar IE laat het weer afweten...

Weet iemand een betere manier, of valt een fout op?
Alvast bedankt!

  1. function checkform()
  2. {
  3. var i = 0;
  4. var input = document.getElementsByTagName("input");
  5.  
  6. for(var i in input)
  7. {
  8. if(input[i].value==null || input[i].value=="")
  9. {
  10. if(i != "length" && i != "item" && i != "namedItem")
  11. {
  12. alert("Fout #"+i+" - U moet alle velden invullen");
  13. i = 1;
  14. return false;
  15. }
  16. }
  17. }
  18.  
  19. if(i==0) return true;
  20. }

3 antwoorden

Gesponsorde links
Offline ibmos2warp - 30/07/2009 16:47
Avatar van ibmos2warp PHP interesse Krijg je ook een error o.i.d.?
Offline Pellens - 30/07/2009 16:54
Avatar van Pellens PHP interesse Wel, de alert("Fout #...) geeft in FF gewoon cijfers weer.
In IE alert de website dat "voornaam" ingevuld moet worden.

Er is geen element met naam "voornaam" aanwezig in de form.
Dat is het rare.

input[i] heeft toch niets te maken met id/name/.. ofzo? Enkele het i'e element he?

Grtz
Offline PRO - 30/07/2009 17:02
Avatar van PRO JS interesse Dat klopt, bugje in IE.
Aangezien je die for beter voor een JSON object kunt gebruiken, raad ik aan om nu een normale for lus toe te passen.

  1. for(var i = 0; i < input.length; i++) {
  2. // hier de rest
  3. }
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.174s