Toon posts:

[JS] Form validatie probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer met het volgende javascript de inhoud van een formulier veld te controleren, in dit voorbeeld een telefoonnummer.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function checkPhone (strng) {
var error = "";
if (strng == "") {
   error = "Je hebt geen telefoonnummer ingevoerd.\n";
}

var stripped = strng.replace(/[\(\)\.\-\ ]/g, ''); //strip out acceptable non-numeric characters
    if (isNaN(parseInt(stripped))) {
       error = "Het telefoonnummer bevat ongeldige karakters.\n";
  
    }
    if (!(stripped.length == 10)) {
        error = "Het telefoonnummer heeft een ongeldig aantal cijfers.\n";
    } 
return error;
}


Als er geen telefoonnummer ingevoerd wordt verschijnt de melding "Het telefoonnummer heeft een ongeldig aantal cijfers." i.p.v. "Je hebt geen telefoonnummer ingevoerd". De eerste controle op een leeg veld wekt dus niet. Het zal wel een heel eenvoudig iets zijn, maar ik kom er niet uit.
Alvast bedankt, Joost


Ik heb hier een voorbeeldje online staan

  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

Na error = "Je hebt geen telefoonnummer ingevoerd.\n"; een return error; neerzetten.

[ Voor 22% gewijzigd door André op 04-03-2004 09:45 ]


  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10-2025
André schreef op 04 maart 2004 @ 09:44:
Na error = "Je hebt geen telefoonnummer ingevoerd.\n"; een return error; neerzetten.
Dat zou toch niet nodig moeten zijn? Omdat hij aan het eind van de functie return error heeft staan? Hij doet dan wel wat onnodige checks, maar het zou moeten werken...

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Javascript hoort niet thuis in P&W, maar in W&G (zie de forumdescr).

-> W&G

https://fgheysels.github.io/


  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

Amras schreef op 04 maart 2004 @ 09:51:
[...]


Dat zou toch niet nodig moeten zijn? Omdat hij aan het eind van de functie return error heeft staan? Hij doet dan wel wat onnodige checks, maar het zou moeten werken...
Omdat aan het einde van de functie de error string is overschreven door die andere. Dus direct na het zetten van de error sting moet hij hem al returnen.

Die vergelijking werkt dus wel, en de goede boodschap wordt ook in de error variabele gezet maar die wordt direct daarna weer overschreven.

[ Voor 15% gewijzigd door André op 04-03-2004 09:53 ]


  • Amras
  • Registratie: Januari 2003
  • Laatst online: 01-10-2025
André schreef op 04 maart 2004 @ 09:52:
[...]

Omdat aan het einde van de functie de error string is overschreven door die andere. Dus direct na het zetten van de error sting moet hij hem al returnen.

Die vergelijking werkt dus wel, en de goede boodschap wordt ook in de error variabele gezet maar die wordt direct daarna weer overschreven.
Je hebt gelijk, ik wou het net hier neerzetten. Zag het toen ik er ff mee aan de gang ging.

Voor de TS: de if-statements na het checken op een leeg veld slagen ook voor een lege invoer, hier wordt dus je error overschreven. Als je de error dus gelijk returned heb je daar geen last van. ;)

Verwijderd

Topicstarter
Bedankt allemaal. Heb nu een return error; toegevoegd en alles werkt perfekt. Daar was ik zelf niet achter gekomen! _/-\o_
Pagina: 1