Deckhengst
Nieuwe gebruiker
- Lid geworden
- 13 nov 2008
- Berichten
- 2
Hoy,
Hoewel ik al enkele jaren actief ben met html, css, PHP, ben ik nog maar net begonnen met javascript, dus waarschijnlijk is mijn probleem heel eenvoudig op te lossen.
Mijn bedoeling is om met een javascript een controle uit te voeren op meerdere velden om te kijken of er hier iets ingevuld werd. Ook is er een extra controle op een emailveld om te controleren of dit de juiste vorm heeft. Na de controle moet er een alert weergegeven worden met alle fouten.
Een extra moeilijkheid is dat dit script op meerdere formulieren moet toegepast kunnen worden.
Mijn javascript staat in een extern bestand dat ik aanroep bij het verzenden:
<script language="Javascript" type="text/javascript" src="formvalidation.js"></script>
<form name="registrate" onsubmit="return validateForm(this.name, Array(name,firstname), mail);">
In mijn javasript staat dan:
Ik heb even een een screenshot van het alert genomen:
Het probleem is nu dat de controles altijd false generen.Volgens mij roep ik de velden niet goed aan. ('document.' + fName + '.' + fMail + '.value')
Via wat zoekwerk vond ik dat ik de functie eval() zou moeten gebruiken, maar dan lijkt het script helemaal niet meer te werken.
Is er iemand die mij op de goede weg kan helpen?
Alvast bedankt,
Deckhengst
Hoewel ik al enkele jaren actief ben met html, css, PHP, ben ik nog maar net begonnen met javascript, dus waarschijnlijk is mijn probleem heel eenvoudig op te lossen.
Mijn bedoeling is om met een javascript een controle uit te voeren op meerdere velden om te kijken of er hier iets ingevuld werd. Ook is er een extra controle op een emailveld om te controleren of dit de juiste vorm heeft. Na de controle moet er een alert weergegeven worden met alle fouten.
Een extra moeilijkheid is dat dit script op meerdere formulieren moet toegepast kunnen worden.
Mijn javascript staat in een extern bestand dat ik aanroep bij het verzenden:
<script language="Javascript" type="text/javascript" src="formvalidation.js"></script>
<form name="registrate" onsubmit="return validateForm(this.name, Array(name,firstname), mail);">
In mijn javasript staat dan:
Code:
function obligate(field){
if ((field.value == null)||(field.value == "")){
return false;
}
return true;
}
function validateEmail(field) {
// controle mail in de juiste vorm
return false
}
function validateForm(fName, obligateFields, fMail){
//fName: naam van het formulier
//obligateFields: een array van de verplichte velden
//fmail: de naam van het emailveld
var error = '';
for(i=0;i<obligateFields.length;i++){
if(!obligate('document.' + fName + '.' + obligateFields[i])){
error += 'U heeft geen ' + fName + '.' + obligateFields[i] + '.name' + ' ingevuld.\n';
}
}
if(!validateEmail('document.' + fName + '.' + fMail + '.value')){
error += 'U heeft geen geldig emailadres ingevoerd!\n';
}
if ((error == null)||(error == "")){
return true;
} else {
alert(error);
return false;
}
return false;
}
Ik heb even een een screenshot van het alert genomen:
Het probleem is nu dat de controles altijd false generen.Volgens mij roep ik de velden niet goed aan. ('document.' + fName + '.' + fMail + '.value')
Via wat zoekwerk vond ik dat ik de functie eval() zou moeten gebruiken, maar dan lijkt het script helemaal niet meer te werken.
Is er iemand die mij op de goede weg kan helpen?
Alvast bedankt,
Deckhengst