我有這段代碼,我的想法是發送數據到validation.php
,但沒有提交表單。下面的代碼在單擊時不會執行任何操作。我的問題是,我不能允許提交默認操作,因爲當按下按鈕時,無論驗證是否有效,都會重新加載到初始頁面。如果我將.click
更改爲.submit
發生同樣的情況,頁面將被重新加載。preventDefault - 不按預期工作
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$("#customForm").click(function(event){
event.preventDefault();
$.post("validation.php", {
nameRegist: $('#nameRegist').val(),
emailRegist: $('#emailRegist').val(),
myPasswordRegist: $('#myPasswordRegist').val(),
pass2Regist: $('#pass2Regist').val()
});
});
});
</script>
<form method="post" id="customForm" action="">
<div>
<label for="name">Name</label>
<input id="nameRegist" name="nameRegist" type="text" />
<span id="nameInfo">Insira o seu nome</span>
</div>
<div>
<label for="email">E-mail</label>
<input id="emailRegist" name="emailRegist" type="text" />
<span id="emailInfo">Insira um email válido por favor!</span>
</div>
<div>
<label for="myPassword">Password</label>
<input id="myPasswordRegist" name="myPasswordRegist" type="password" />
<span id="myPasswordInfo">Insira pelo menos 4 letras e sem espaços</span>
<div id="bar" style="width: 234px; height: 20px;"></div>
</div>
<div>
<label for="pass2">Confirm Password</label>
<input id="pass2Regist" name="pass2Regist" type="password" />
<span id="pass2Info">Confirme a password</span>
</div>
<div></div>
<div>
<input id="send" name="send" type="submit" value="Send" />
</div>
</form>
http://emprego.xtreemhost.com/login/emprego.php - 請點擊綠色按鈕(雷吉斯托),然後提交(對不起FOT壞服務器)
你不應該'返回false;'? – Jan 2011-04-10 15:59:07
你只是發佈數據而不處理回調?你確認沒有JS錯誤報告? – JohnP 2011-04-10 15:59:56
你怎麼知道什麼都沒有發生?您沒有處理來自服務器的響應。您是否使用過沒有請求被髮送的Firebug?如果你想使用'.submit'(這更好),你必須將事件處理程序附加到表單而不是提交按鈕。實際上,如果它什麼都不做,這表明代碼確實有效。否則,該網站將重新加載。 – 2011-04-10 16:01:36