2010-11-23 127 views
1

我开发的wordpress小部件存在问题。PHP仅在勾选复选框时才会提交表格

这只是一个包含电子邮件字段,按钮和复选框的表单。

当用户点击提交,我想验证是否复选框被选中,如果是提交表单...

我的问题是,在提交表单甚至强硬的复选框未选中。该页面被重新加载。

这里是我的代码短版:

<?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> 

回答

6

添加一个简单的onsubmit处理程序的形式,例如:

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

演示:http://jsfiddle.net/vqVEF/

+0

感谢伙计!我用jQuery来验证我的表单,我只是添加了“return this.rules.checked;”它的确有窍门。玩的开心。 – 2010-11-23 10:16:35