2012-06-20 108 views
-3

目前,我有一個按鈕:使用AJAX POST數據到PHP數據庫,然後刷新

<ul> 
    <li><button onclick="display('1')">1</button></li> 
    <li><button onclick="display('2')">2</button></li> 
    <li><button onclick="display('3')">3</button></li> 
</ul> 

按下時,調用javascript函數,並顯示PHP基於正在使用AJAX按下哪個按鈕。我自己想到了這一切。 AJAX通過一個postgres查詢獲取一個PHP文件,將一個數據表輸出到一個div。

現在我希望能夠通過窗體添加新數據並刷新它(無需重新加載頁面,yannknow?)。我嘗試了幾件事,每次都遇到了障礙。

我最初的想法是讓表單使用JavaScript函數和AJAX提交數據,然後在查詢之後調用我的「display()」函數以重新加載內容。我只是無法用GoogleFu搞清楚。

根據我目前的想法,我想幫助有以下:

  1. 如何將表單數據傳遞給JavaScript函數。
  2. 如何使用POST將該數據傳遞給使用AJAX的PHP?

我對JavaScript和AJAX超級新手。我已經研究過jquery,因爲它似乎是要走的路,但我無法弄清楚。如果有更好的方法來做到這一點,我願意接受建議。請原諒任何濫用術語的行爲。

編輯:一旦我解決了這個問題......,我將擁有完成項目所需的所有工具。

+2

[你有什麼試過?](http ://whathaveyoutried.com) – madfriend

+0

當你創建你的INITIAL ajax請求時,你需要在服務器上存儲'row_count'。當發送另一個帖子請求時,比較存儲的行和新行。將新行發送到服務器,並使用'$ .append()'將數據追加到AJAX請求的'success:function'中的表中。 – Ohgodwhy

+0

[Stack Overflow不是研究助理](http://meta.stackexchange.com/a/128553/183490) – undefined

回答

1

該實施例直接從jQuery API文檔複製爲$.post具有值節點(textarea的,輸入,..)。如果有疑問,先來看看的地方是在API中

http://api.jquery.com/jQuery.post/

示例:使用Ajax請求

$.post("test.php", $("#testform").serialize(), function(data){ 
    /* success- do something with returned data*/ 
}); 

現在進一步擴展的概念和包裝後在發送表單數據提交形式爲

$("#testform").submit(function(){ 
/* code from above, changing form selector to "this" */ 
    $.post("test.php", $(this).serialize(), function(data){ 
     /* success- do something with returned data*/ 
    });  
/* prevent browser default submit*/ 
    return false; 
}) 
+0

本例中的'#testform'將出現在'

'標記中,是嗎? – sotwacct

+0

我爲你添加了一個提交處理程序。如果您沒有用戶點擊提交按鈕,請使用發佈版本,使用第二個版本讓用戶提交表單 – charlietfl

+0

#testform是表單標籤ID。 –

0

參照jQuery.post方法。它做你想做的(用POST數據發送AJAX請求)。

要從輸入搶值,可使用val()方法

相關問題