[javascript] Niet werkende veld controle

Pagina: 1
Acties:

  • squaddie
  • Registratie: Februari 2000
  • Laatst online: 20:23
Ik heb een php-pagina met een formulier erop en met een javascriptje wil controleren of de velden daadwerkelijk zijn invult. Echter als ik niets invul en submit, dan gaat hij gewoon door en voert de daadwerkelijke submit uit terwijl er eigenlijk een message moet komen en dan blijven wachten.

Form:
<form name='myForm' method='post' action='pagina.php' onsubmit='return submitCheck()'>

Javascript:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script LANGUAGE="javascript">
  function submitCheck() {
    var errormessage = new String();
    if(WithoutContent(document.myForm.email.value))
      { errormessage += "\nGeen email adres ingevuld."; }

    if(errormessage.length > 2) {
      alert('Info:' + errormessage);
      return false;
    }
    else {
      document.prijsFlyer.bool.value = 'true';
      return true;
    }

  function WithoutContent(ss) {
     if(ss.length > 0) { return false; }
     return true;
  }
</script>


Ik heb zitten zoeken maar kan het probleem niet, ook google en GoT hebben geen licht kunnen brengen waarom dit scriptje niet wil werken.

There are never enough hours in a day, but always too many days before saturday.


Verwijderd

Je mist iig een semicolonaccolade die de methode submitCheck() afsluit. Een simpele testcase lokaal wijst uit dat dat de oorzaak is.

edit:

Ik was voor André! Ik was voor André \o/ ;)

[ Voor 59% gewijzigd door Verwijderd op 23-12-2004 17:23 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Zo dan?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<script type="text/javascript">
  function submitCheck()
  {
    var errormessage = "";
    if (WithoutContent(document.forms["myForm"].elements["email"].value))
      { errormessage += "\nGeen email adres ingevuld."; }

    if (errormessage != "")
    {
      alert('Info:' + errormessage);
      return false;
    } else {
      document.prijsFlyer.bool.value = 'true';
      return true;
    }
  }

  function WithoutContent(ss)
  {
     if (ss.length > 0) { return false; }
     return true;
  }
</script>

[ Voor 36% gewijzigd door André op 23-12-2004 17:21 . Reden: Quist opzouten, lees de FAQ van /13 eens, André gaat altijd voor. In het vervolg dus eerst even wachten ;) En zoals cyphax zegt: ik ben dus de eerste met het goede antwoord :P ]


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Wellicht had je je pagina ook even kunnen debuggen en controleren wat er daadwerkelijk gebeurt binnen de formcheck...

edit:
Ik ben spuit 11, ik ben spuit 11 (dit in vervolg op Quist)

[ Voor 24% gewijzigd door Woudloper op 23-12-2004 17:19 ]


  • Cyphax
  • Registratie: November 2000
  • Laatst online: 21:38

Cyphax

Moderator LNX
Verwijderd schreef op donderdag 23 december 2004 @ 17:16:
Je mist iig een semicolon die de methode submitCheck() afsluit. Een simpele testcase lokaal wijst uit dat dat de oorzaak is.

edit:
Ik was voor André! Ik was voor André \o/ ;)
Welke rivaliteit? :P

Overigens is dit een semicolon: ";"
{ en } zijn accolades :)

Saved by the buoyancy of citrus


  • squaddie
  • Registratie: Februari 2000
  • Laatst online: 20:23
Ik heb de code van andre weer geknipt en geplakt in mijn php-pagina maar hij doet het nog steeds niet, ik het bestand ook even naar mijn hosting-provider gestuurt, maar als ik hem daar open dan doet hij het ook niet... Een andere browser en een andere pc zelfde resultaat.

Weird... :?

PS Ik heb inmiddels het formulier en het javascriptje in een html documentje gezet, zodat ik deze twee dingen kan testen zonder andere factoren, maar dat gaat hij ook gewoon door.

PS2 Ik heb <script LANGUAGE="text/javascript"> verandert in <script type="text/javascript">
en dan doet scriptje het wel...

[ Voor 43% gewijzigd door squaddie op 23-12-2004 19:45 ]

There are never enough hours in a day, but always too many days before saturday.

Pagina: 1