我正在使用jQuery serialize()函數來收集表單中的數據,並使用jQuery Ajax「post」方法提交給服務器,如下所示:var params = jQuery('#mainContent form').serialize();
。
我看到的奇怪之處在於我的表單中的序列化數據包含舊數據。這意味着,我所有的表單變化(輸入到文本字段,在組合框中選擇)都不存儲到DOM,所以當jQuery調用serialize()
時,它會收集在更改表單之前出現的舊數據。我試圖檢查這種形式的每個元素,並呼籲.val()
,它仍然顯示了舊的價值觀。
那麼如何堅持我所有的修改形式,serialize()
方法可以用我輸入的最新數據構建字符串?
這裏是我的代碼段,我叫serialize()
內提交處理jQuery:在序列化之前持久化表單值?
jQuery('.myFormDiv input.submit').click(function() {
// Do something
// Collect data in form
var params = jQuery('#mainContent form').serialize();
// Submit to server
jQuery.post(url, params, successHandler);
}
太謝謝你了。
你可以上傳你的代碼(或簡化版本)爲jsfiddle嗎? – Samuel
你叫'$(document).ready'嗎? – undefined