我想在提交到服務器之前執行表單驗證。我正在使用jquery.validate插件 (JQuery validation plugin page) 我面臨的問題是,無論我在表單字段中輸入什麼,驗證總是成功,我重複檢查了所有文檔和樣品,並且無法看到爲什麼我正在得到這種行爲。 這種形式是通過加載jquery的AJAX:jQuery驗證:表單總是有效的問題
$.ajax({
url: "mypage.php",
type: "POST",
cache: false,
success: function(cont){
$("body").append(cont);
}
});
在這裏,我告訴你mypage.php代碼
<script src="js/jquery.validate.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#frmParticipante").validate({
rules: {
nombre: { required: true } ,
email: { required: true, email: true },
ci: { required: true}
}
});
$("#frmParticipante").submit(function(e){
e.preventDefault();
if($(this).valid()){
loadpop("ganaste.php");
}
else
loadpop("perdiste.php");
});
});
</script>
<div id="pop_terminaste" class="pop_mensaje ingresardatos animated fadeInDown">
<div id="infopop">
<div id="lady"> <img src="images/terminaste1.jpg" width="453" height="626" /> </div>
<div id="dato">
<p class="txt1">¡Terminaste la trivia!</p>
<p class="txt2">Ahora solo te falta completar tus datos para conocer el resultado.</p>
<p class="txt3">Si ha cargado anteriormente sus datos, ingresar solo su cédula.</p>
<form action="" id="frmParticipante" class="form">
<fieldset>
<label for="nombre"><img src="images/ico_nombre.png" alt="ico_nombre" /></label>
<input type="text" placeholder="Nombre y Apellido" id="nombre">
</fieldset>
<fieldset>
<label for="email"><img src="images/ico_email.png" alt="ico_email" /></label>
<input type="text" placeholder="Email" id="email">
</fieldset>
<fieldset>
<label for="ci"><img src="images/ico_ci.png" alt="ico_ci" /></label>
<input type="text" placeholder="C.I" id="ci">
</fieldset>
<p class="msg error">Favor verificar los datos ingresados.</p>
<input type="submit" value="VER RESULTADOS" />
</form>
</div>
</div>
</div>
感謝
您的第一個jQuery代碼示例「mypage.php」缺少關閉'「',因此出現錯誤。 –
您需要'返回false;'在$(「#frmParticipante」)。submit'內部以防止表單提交。 –
@KhanhTO或'e.preventDefault();' –