verzenden stoppen met javascript als niet aan voorwaarden wordt voldaan

Status
Niet open voor verdere reacties.

BugMenOT2

Gebruiker
Lid geworden
23 nov 2006
Berichten
296
Hallo,

Ik heb hier een contact formulier gemaakt.
mijn probleem is:
als ze bijvoorbeeld geen naam invullen krijgen ze een "alert" van ' je naam invullen' maar het verzenden gaat gewoon door .
mijn vraag is dus eigenlijk welke functie ik moet gebruiken voor het verzenden te stoppen vooraleer mijn voorwaarden zijn voldaan?

:rolleyes:

HTML:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Homepage_Contact</title>

<SCRIPT language="JavaScript">

function controleerinvoer(){ //-----controle invoerTabel Hoofdtabel-----
if(contactform.user.value == ""){
alert('Vul je naam in!');
return false;
}

if(contactform.contact_email.value == ""){
alert('Graag je e-mail-adres correct invullen!');
return false;
}

if(contactform.contact_email.value != "@"){
alert('Graag je e-mail-adres correct invullen!\nHint:(@)');
return false;
}

if(contactform.user.value == contactform.contact_email.value){
alert('Naam mag niet hetzelfde als e-mail!');
return false;
}

} //-----einde controle invoerTabel Hoofdtabel-----

</SCRIPT>


<style type="text/css">
.headertabel /* Tabel Hoofdtabel */
{
border:1px solid black;
background-color:#483D8B;
color:white;
font-weight:bolder;
}

.formulier /* (Naam, E-mailadres, WebSite & Verzenden(knop), Reset(knop) */
{
border: 1px solid black;
}

.vetgedruktT /* vetgedrukte titels (Contact, E-mailadres, WebSite) */
{
color: #483D8B;
}

.contactformtabel /* Tabel geheel + Tabel E-mailadres- en WebSite */
{
border: 1px solid #F8F8FF;
}
</style>

</head>

<body bgcolor="#dbdbdb">
<center>
  
<table class="headertabel"> <!-- Tabel Hoofdtabel -->
 <tr>
  <td width=420>
  Neem contact op met Homepage: Contact
 </table> <!--einde Tabel Hoofdtabel --> 
                                                                                                                                      
<table border=0 cellpadding="5" cellspacing="5" width="430" class="contactformtabel"> <!-- Tabel geheel -->
 <tr>
  <td>
  <form method="post" action="mailto:email@hotmail.com" ENCTYPE="text/plain" name="contactform">
   <table border=0 cellpadding="5" cellspacing="5">  <!-- Tabel Contact: Naam -->
    <tr>
     <b class="vetgedruktT"><font size="2pt">Contact</b></font><br>
      <font size="1pt">Voer a.u.b. in onderstaand formulier je naam, een geldig e-mailadres en andere eventuele informatie in.</font><hr>
       <td>
       <blockquote>Naam: <br><input type="text" value="" size="42" class="formulier" name="user"> 
      </td>
     </tr>
   </table><p>
    <table border=0 cellpadding="5" cellspacing="5" class="contactformtabel">  <!-- Tabel E-mailadres -->  
     <tr>
      <b class="vetgedruktT"><font size="2pt">E-mailadres</b></font><br>
       <font size="1pt">Vul hier een geldig en werkend e-mailadres van jezelf in.</font><hr>
        <td>
        <blockquote>E-mail-adres: <br><input type="text" value="" class="formulier" name="contact_email">
      </td>
     </tr>
    </table><p>
     <table border=0 cellpadding="5" cellspacing="5" class="contactformtabel"> <!-- TabelWebSite -->
      <tr>
       <b class="vetgedruktT"><font size="2pt">WebSite</b></font><br>
        <font size="1pt">Vul hier jouw eigen homepage in. (website)</font><hr>
         <td>
         <blockquote>Homepage: <br><input type="text" value="http://" class="formulier" name="homepage_contact">
        </td>
       </tr>
      </table>
       <table border="0" width="300" align="left"> <!-- Tabel Verzend- en resetknop -->
        <tr>
         <td>
         <input type="submit" value="Verzenden" class="formulier" onclick="controleerinvoer()"> <!--functie oproepen-->
          <td>
          <input type="reset" value="Reset" class="formulier">
           </td>
          </td>
         </tr>
        </table>   
       </td> 
      </tr>
     </tr> 
    </form>   
   </table>
  </blockquote><a href="index.htm">Klik hier om terug naar de vorige pagina te gaan .</a>
 </center>

</body>

</html>
 
Laatst bewerkt:
Ik heb:
PHP:
if(contactform.contact_email.value != "@"){
alert('Graag je e-mail-adres correct invullen!\nHint:(@)');
return false;
}

weggehaald, omdat dit op de een of andere manier controleerd het e-mail addres gelijk is aan @, en dat is neem ik aan niet de bedoeling.

PHP:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Homepage_Contact</title>

<SCRIPT language="JavaScript">

function controleerinvoer(){ //--<!---controle invoerTabel Hoofdtabel-----
var correct = true
if(contactform.user.value == ""){
	correct = false; alert("Geef aub uw naam in!")
	}


if(contactform.contact_email.value == ""){
correct = false; alert('Graag je e-mail-adres correct invullen!')
}



if(contactform.user.value == contactform.contact_email.value){
correct = false; alert('Naam mag niet hetzelfde als e-mail!');
}

if (correct){alert("Dank voor het invullen van dit formulier.")}
return correct }

 //-->---einde controle invoerTabel Hoofdtabel-----

</SCRIPT>


<style type="text/css">
.headertabel /* Tabel Hoofdtabel */
{
border:1px solid black;
background-color:#483D8B;
color:white;
font-weight:bolder;
}

.formulier /* (Naam, E-mailadres, WebSite & Verzenden(knop), Reset(knop) */
{
border: 1px solid black;
}

.vetgedruktT /* vetgedrukte titels (Contact, E-mailadres, WebSite) */
{
color: #483D8B;
}

.contactformtabel /* Tabel geheel + Tabel E-mailadres- en WebSite */
{
border: 1px solid #F8F8FF;
}
</style>

</head>

<body bgcolor="#dbdbdb">
<center>
  
<table class="headertabel"> <!-- Tabel Hoofdtabel -->
 <tr>
  <td width=420>
  Neem contact op met Homepage: Contact
 </table> <!--einde Tabel Hoofdtabel --> 
                                                                                                                                      
<table border=0 cellpadding="5" cellspacing="5" width="430" class="contactformtabel"> <!-- Tabel geheel -->
 <tr>
  <td>
  <form method="post" onSubmit="return controleerinvoer()" action="mailto:mail@hotmail.com" ENCTYPE="text/plain" name="contactform">
   <table border=0 cellpadding="5" cellspacing="5">  <!-- Tabel Contact: Naam -->
    <tr>
     <b class="vetgedruktT"><font size="2pt">Contact</b></font><br>
      <font size="1pt">Voer a.u.b. in onderstaand formulier je naam, een geldig e-mailadres en andere eventuele informatie in.</font><hr>
       <td>
       <blockquote>Naam: <br><input type="text" value="" size="42" class="formulier" name="user"> 
      </td>
     </tr>
   </table><p>
    <table border=0 cellpadding="5" cellspacing="5" class="contactformtabel">  <!-- Tabel E-mailadres -->  
     <tr>
      <b class="vetgedruktT"><font size="2pt">E-mailadres</b></font><br>
       <font size="1pt">Vul hier een geldig en werkend e-mailadres van jezelf in.</font><hr>
        <td>
        <blockquote>E-mail-adres: <br><input type="text" value="" class="formulier" name="contact_email">
      </td>
     </tr>
    </table><p>
     <table border=0 cellpadding="5" cellspacing="5" class="contactformtabel"> <!-- TabelWebSite -->
      <tr>
       <b class="vetgedruktT"><font size="2pt">WebSite</b></font><br>
        <font size="1pt">Vul hier jouw eigen homepage in. (website)</font><hr>
         <td>
         <blockquote>Homepage: <br><input type="text" value="http://" class="formulier" name="homepage_contact">
        </td>
       </tr>
      </table>
       <table border="0" width="300" align="left"> <!-- Tabel Verzend- en resetknop -->
        <tr>
         <td>
         <input type="submit" value="Verzenden" class="formulier" > <!--functie oproepen-->
          <td>
          <input type="reset" value="Reset" class="formulier">
           </td>
          </td>
         </tr>
        </table>   
       </td> 
      </tr>
     </tr> 
    </form>   
   </table>
  </blockquote><a href="index.htm">Klik hier om terug naar de vorige pagina te gaan .</a>
 </center>

</body>

</html>
 
Laatst bewerkt:
Ik vindt het wel goed gevonden maar, heb nog altijd hetzelfde probleem.(eerder was het alleen de bovenste niet voldane waarden)
alleen nu als je iets niet/fout invult krijg je alle alert's van de niet voldane waarden.

En verzenden gebeurt ook nog altijd bij mijn niet voldane waarden.:(
 
Laatst bewerkt:
Heb je de hele code letterlijk overgenomen? Want bij mij deed deze code het namelijk wel gewoon goed.
 
Oké,

Ik heb nu de hele code overgenomen en nu lukt het wel. Bedankt!

maar, je had toch alleen de javascript functie verandert?
of nog meer in de html?
 
Ik heb ook in plaats van onclick="controleerinvoer() in de submitbutton onSubmit="return controleerinvoer()" in <form gezet.

PHP:
<form method="post" onSubmit="return controleerinvoer()" action="mailto:mail@hotmail.com" ENCTYPE="text/plain" name="contactform">

Succes met de rest van je site :) .
 
Ahja, nu zie ik het :D

Echt bedankt!!

Heb wat aan je gehad!!

:thumb:
 
Dit controleerd een e-mailadres nog iets beter: :)
Code:
if (!/^[a-z0-9\._%-]{2,}@[a-z0-9\._%-]{2,}\.[a-z]{2,4}$/.test(document.contactform.contact_email.value)) {
 correct = false;
 alert('Graag je e-mail-adres correct invullen!\nHint: naam@domein.land');
 };
(letter cijfer punt underscore procent hypen) 2 of meer > apestaartje > (letter cijfer punt underscore procent hypen) 2 of meer > punt > (letter) 2 t/m 4 keer

Als je ook hoofdletters wilt toelaten kun je drie keer A-Z achter a-z zetten.


Vr.Gr. Egel.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan