2010-11-23 6 views
1

J'ai un problème avec un widget wordpress que j'ai développé.PHP Soumettre le formulaire uniquement si la case est cochée

C'est juste un formulaire avec un champ email, un bouton et une case à cocher.

Lorsque l'utilisateur clique sur soumettre, je veux vérifier si la case est cochée et SI OUI soumettre le formulaire ...

Mon problème est que la forme est soumise même difficile la case est décochée. La page est rechargée.

Voici une version courte de mon code:

<?php if(isset($_POST['rules']) && $_POST['rules'] == 'Yes') 
{ 
     echo 'The checkbox was selected'; 
} else { 
     echo 'The checkbox wasn\'t selected'; 
} ?> 

<form id="form-invite" method="post" action=""> 
    <label>Your friend(s) email :</label> 
    <br/> 
    <small style="text-transform:uppercase;font-family:Arial;font-size:9px;color:#333;"<em>Multiple emails separated by comma.</em></small> 
    <input class="kolom" type="text" name="email" id="email"/> 
    <input class="button-primary classic-button" type="submit" name="send-them" value="Send Invitation"/> 
    <input type="checkbox" name="rules" value="Yes" /> <span id="rulesInfo">I read the Privacy Policy</span><br/> 
    <span id="emailInfo"></span> 
</form> 

Répondre

6

Ajouter un gestionnaire onsubmit simple à la forme, par exemple .:

<script> 
    document.getElementById("form-invite").onsubmit = function() { 
     return this.rules.checked; 
    } 
</script> 

Démo: http://jsfiddle.net/vqVEF/

+0

Merci mec! J'ai utilisé jQuery pour valider mon formulaire et j'ai simplement ajouté "return this.rules.checked;" et ça fait l'affaire. Je te souhaite une bonne journée. –

Questions connexes