2011-04-10 190 views
1

我有這段代碼,我的想法是發送數據到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壞服務器)

+0

你不應該'返回false;'? – Jan 2011-04-10 15:59:07

+0

你只是發佈數據而不處理回調?你確認沒有JS錯誤報告? – JohnP 2011-04-10 15:59:56

+0

你怎麼知道什麼都沒有發生?您沒有處理來自服務器的響應。您是否使用過沒有請求被髮送的Firebug?如果你想使用'.submit'(這更好),你必須將事件處理程序附加到表單而不是提交按鈕。實際上,如果它什麼都不做,這表明代碼確實有效。否則,該網站將重新加載。 – 2011-04-10 16:01:36

回答

2
$(document).ready(function() { 

     $("#customForm").submit(function(event){ 
     $.post("validation.php", { 
      nameRegist: $('#nameRegist').val(), 
      emailRegist: $('#emailRegist').val(), 
      myPasswordRegist: $('#myPasswordRegist').val(), 
      pass2Regist: $('#pass2Regist').val() 
     }); 
     event.preventDefault(); 
     return false; 
     }); 
    }); 
+0

頁面後重新加載。我將演示在空氣 – anvd 2011-04-10 16:18:19

+0

鏈接添加,請 – anvd 2011-04-10 16:24:20