2012-09-20 51 views
0

我想用ajax處理這個表單,但是在發送前我應該如何處理數據並不完全清楚。這是我的形式,這是一個表達式引擎模塊,用於輸出,所以我不知道的會發生到PHP函數什麼:使用ajax與現有的表格

<form id="bookmark_form_entry_106" class="bookmark_form" name="bookmark_form" method="post" action="http://mysite.com//S=1b73e2e22729ccf0613b758ecc7e2631fab28745/"> 

<div class="hiddenFields"> 
<input type="hidden" name="XID" value="438068dba50235d9992e1492a6171e892f7bac60"> 
<input type="hidden" name="ACT" value="50"> 
<input type="hidden" name="RET"  value="http://mysite.com/S=1b73e2e22729ccf0613b758ecc7e2631fab28745/video/esegui_slq_1"> 
<input type="hidden" name="type" value="entry"> 
<input type="hidden" name="data_id" value="106"> 
<input type="hidden" name="site_id" value="3"> 
</div> 


<input type="submit" value="add bookmark"> 

</form> 

我將使用jQuery $就();但我不知道如何處理表單數據:

$.ajax({ 
type: "POST", 
url: "http://mysite.com//S=1b73e2e22729ccf0613b758ecc7e2631fab28745/", // is this correct? 
data: , // what data should go there? 
success: function() { 
// wohoo, this works! 
} 
}); 

我與形式相當新手,所以我不知道如果我有更多的瞭解後處理腳本將如何處理我的數據,或者如果知道表單內部的內容就足夠了。

我也很好奇我怎麼可以用網絡檢查器(或螢火蟲)來測試這個謝謝!

+0

?我的意思是你明確需要這樣做嗎?表單應該只提交itslef罰款通過郵政用純html ... – Onheiron

+1

我想用阿賈克斯提交它,因爲表格處理「喜歡這個入口」的事情,它似乎是徒勞的,我重新加載頁面。不僅如此,還有一個惱人的消息頁面,他告訴我提交是好的:(。 – Daniele

回答

2

要獲取數據,您需要使用jQuery的序列化函數(http://api.jquery.com/serialize/)。

var data = $('#form_id').serialize() 

然後,只需使用data變量在你的AJAX調用!

根據您處理表單提交的方式,您應該可以使$(this)變量成爲您提交的表單。

所以構建您的通話將是一個不錯的方式:在data使用$('#bookmark_form_entry_106').serialize()

$.ajax({ 
type: "POST", 
url: $(this).attr('action'), // read the action attribute of the form 
data: $(this).serialize(), // what data should go there? 
success: function() { 
// wohoo, this works! 
} 
}); 
+0

謝謝,.serialize()非常方便! – Daniele

0

你爲什麼要使用jQuery設置後值

$.ajax({ 
    type: "POST", 
    url: "http://mysite.com//S=1b73e2e22729ccf0613b758ecc7e2631fab28745/", // is this correct? 
    data: $('#bookmark_form_entry_106').serialize(), // what data should go there? 
    success: function() { 
    // wohoo, this works! 
    } 
});