2012-10-02 224 views
1

所以我完全失去了如何使用Ajax提交表單。我相當新的Javascript,希望我沒有超過我的頭。使用Ajax提交表單

當我點擊提交表單時,我的頁面上沒有任何反應,也沒有發生信息應該存儲在我的SQL數據庫中(雙重檢查過程表單)。

下面的代碼,如果任何人是願意幫助:

的Javascript:

$(document).ready(function() { 
    $('#form').submit(function() { 
     $.ajax({ 
      url: "../process.php", 
      type: "post", 
      data: $(this).serialize() 
     }); 
    }); 
}); 

HTML:

<form name="contact" method="post" action="" id="form"> 

    <span id="input"> 
     <input type="text" name="first" maxlength="50" size="30" title="First Name" class="textbox"> 
     <input type="text" name="last" maxlength="80" size="30" title="Last Name" class="textbox"> 
     <input type="text" name="email" maxlength="80" size="30" title="Email" class="textbox"> 
     <textarea name="request" maxlength="1000" cols="25" rows="6" title="Request"></textarea> 
    </span> 

    <input type="submit" value="Submit" class="submit"> 

</form> 
+2

有你打開你的JavaScript控制檯/開發工具? – ahren

+1

php的路徑是否正確?如何嘗試你的PHP腳本的絕對路徑? –

+0

PHP路徑是正確的,當我把它作爲action =「...」的形式工作。 – Sidetracking

回答

1
$('#form').submit(function(e) { 
    e.preventDefault(); //prevents the page from refreshing 
    var $this = $(this); // cache $(this) for later use 
    $.ajax({ 
     url: "../process.php", 
     type: "post", 
     data: $this.serialize() 
    }); 
}); 

也可能是與做財產。或其他各種事情。

0

我使用輸入類型按鈕,而不是提交按鈕。當用戶單擊按鈕使用單擊事件時,我驗證表單域。當驗證通過然後調用ajax。

這樣的事情,

<input type="button" value="Submit" class="submit"> 

jQuery(function(){ 
jQuery('.submit').click(function(){ 
    if(validatemyform()){ 
    //call ajax here 
} 
}); 
});