12. november 2005 - 15:46
Der er
5 kommentarer og
1 løsning
form skal udfyldes
Hej
Jeg har en email formular, hvor jeg gerne vil have at visse felter skal udfyldes før man kan sende en besked.. Hvordan gøres dette?
12. november 2005 - 15:50
#1
Det gør du med javascript, f.eks. en email og navn validator kan se sådan ud:
<script type="text/javascript">
<!-- Skjuler for ældre browsere
function Check_Form(theForm)
{
err = '';
if (theForm.navn.value == '')
{
err += "Dit Navn\r";
}
else
{
test = theForm.navn.value;
test = test.replace('<','');
test = test.replace('>','');
test = test.replace(':','');
test = test.replace('¨','');
test = test.replace('^','');
test = test.replace('~', '');
test = test.replace('*','');
test = test.replace('!','');
test = test.replace(',','');
test = test.replace('"','');
test = test.replace('#','');
test = test.replace('£','');
test = test.replace('@','');
test = test.replace('¤','');
test = test.replace('$','');
test = test.replace('%','');
test = test.replace('€','');
test = test.replace('&','');
test = test.replace('/','');
test = test.replace('{','');
test = test.replace('(','');
test = test.replace('[','');
test = test.replace(']','');
test = test.replace('}','');
test = test.replace('=','');
test = test.replace('?','');
test = test.replace('+','');
test = test.replace('´','');
test = test.replace('´','');
test = test.replace('|','');
theForm.navn.value = test;
}
var foo = theForm.mail.value;
var filter =
/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/;
if (!filter.test(foo))
{
err += 'Din e-mail adresse\r';
}
if (err!= '')
{
alert('Du bedes udfylde følgende felter:\r' + err);
return (false);
}
else
{
return (true);
}
}
// Slut på kommentar, der skjuler scriptet for ældre browsere -->
</script>
man skal huske at onsubmit="return Check_Form(this)" i formen på den side som skal valideres
12. november 2005 - 15:52
#2
Javascript til at checke felter på form-elementets onsubmit-event.
Eksempel:
<script type="text/javascript">
function validate(f) {
var bRes = true;
bRes = bRes && f.felt1.value.length != 0;
bRes = bRes && f.felt2.value.length != 0;
if(!bRes)
alert('Felt1 og felt2 skal være udfyldt inden informationerne kan sendes.');
return bRes;
}
</script>
<form onsubmit="return validate(this)">
<input type="text" name="felt1">
<input type="text" name="felt2">
<input type="text" name="felt3">
<input type="submit" name="send" value="send">
</form>
12. november 2005 - 15:56
#3
ok så jeg kan bare tage det sidste du smed, og smide ind i mit script og ændre navne på felt1, osv og så burde det virke???