[javascript] form checks

Pagina: 1
Acties:

  • ViNyL
  • Registratie: Augustus 2001
  • Niet online
Ik ben niet heel goed in javascript dus bare with me....

Ik heb een form waar ik voor het verzenden een aantal checks doe..

in de <form> tag staat dit:

code:
1
<form id="offerte" method="post" action="stap2.php" onSubmit="return validateForm(this);">


Vervolgens moet ik nog 2 datum velden checken met elkaar (is begin datum wel eerder dan de eind datum):

code:
1
<input name="submit" type="submit" value="Offerte bekijken" onClick="Compare(this);">


de Compare functie ziet er zo uit:

code:
1
2
3
4
5
6
7
8
function Compare(field){
  var sDate = new Date(document.getElementById("van").value);
  var eDate = new Date(document.getElementById("tot").value);
  if (sDate >eDate){
    alert ("De begin datum is later dan de gekozen einddatum");
    return false;
  }
}


Het vreemde is dat alles in Internet Explorer keurig werkt, zodra ik hetzelfde in Firefox test dan doen alles veldchecks het prima (alert met u bent dit vergeten bla bla), maar hij slaat de Compare functie in Firefox gewoon over...

Waar komt dit door? Ideeen?

  • André
  • Registratie: Maart 2002
  • Laatst online: 14:48

André

Analytics dude

Zet die compare functie in de onsubmit ;) en niet op de onclick van je submitbutton.

  • ViNyL
  • Registratie: Augustus 2001
  • Niet online
Kan ik hem daar zo achter zetten?

En wat is de juiste opmaak?

code:
1
<form id="offerte" method="post" action="stap2.php" onSubmit="return validateForm(this); Compare(this);">


of
code:
1
<form id="offerte" method="post" action="stap2.php" onSubmit="return validateForm(this); return Compare(this);">


edit:

als ik hem verplaats naar de onsubmit in de form tag dan doet de Compare het niet meer in Internet Explorer

[ Voor 97% gewijzigd door ViNyL op 26-01-2007 12:16 ]


  • XWB
  • Registratie: Januari 2002
  • Niet online

XWB

Devver
Ja.

HTML:
1
onSubmit="return validateForm(this); Compare(this);">


/edit

Met die 2x return weet ik niet, volgens mij komt hij dan niet verder dan validateForm (). Probeer beide eens uit :)

[ Voor 44% gewijzigd door XWB op 26-01-2007 12:16 ]

March of the Eagles


  • BalusC
  • Registratie: Oktober 2000
  • Niet online

BalusC

Carpe diem

Na een return wordt niks uitgevoerd :) Zet de return dus achteraan.

[ Voor 5% gewijzigd door BalusC op 26-01-2007 12:20 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 14:48

André

Analytics dude

Zet alle validatie in 1 functie, dus maak Compare() onderdeel van validateForm()

HTML:
1
2
<form id="offerte" method="post" action="stap2.php" onSubmit="return validateForm(this);">
<input name="submit" type="submit" value="Offerte bekijken">

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
function validateForm(formulier)
{
  // validatie

  var sDate = new Date(formulier.elements["van"].value);
  var eDate = new Date(formulier.elements["tot"].value);
  if (sDate >eDate)
  {
    alert ("De begin datum is later dan de gekozen einddatum");
    return false;
  }
  return true;
}

[ Voor 75% gewijzigd door André op 26-01-2007 12:23 ]


  • ViNyL
  • Registratie: Augustus 2001
  • Niet online
Hoe ik het precies in een functie kan stoppen dan snap ik niet helemaal. Maar dat ga ik maar eens even proberen

edit:


Ik heb de functies in elkaar geschoven, maar het resultaat is hetzelfde... IE doet het prima, Firefox niet. Ik heb ook nog iets toegevoegd en dat pakt Firefox wel.. :S

Kan het niet zo zijn dat er iets in mijn functie zit wat WEL in IE werkt maar niet in FF?

[ Voor 56% gewijzigd door ViNyL op 26-01-2007 13:56 ]

Pagina: 1