2015-02-24 47 views
0

有很多相關/相似/相同的問題,但沒有一個幫助我找到解決方案。jQuery的序列化()返回一個空字符串

我有一個HTML表格包裝在窗體中。對於表中的每一行,都有一個隱藏行,其中包含用於編輯的控件。我不需要提交整個表單,因爲它將包含所有單元格的所有值。所以,使用AJAX,我只想提交單行的值。要做到這一點,我已經給每行一個id屬性,然後使用jQuery鉤住行的提交按鈕並檢索該行的值。

問題是,既沒有.serialize()也沒有.serializeArray()返回任何東西。但是,所有的控件都有名稱和值。而且,據我所知,DOM結構沒有問題。

這裏是一個fiddle重現這個問題。

任何人都可以指出問題或建議一種方法來獲取名稱值對,而不必循環控制?

回答

0

.serialize()方法以標準的URL編碼的 表示法創建一個文本字符串。它可以作用於一個jQuery對象,該對象已經選擇了個別的 表單控件,例如,和:$(「input, textarea,select」).serialize();

Reference

不爲div工作,因爲它不是一個表單控件,如輸入,選擇或文本域

$("#foobar").parent('form').serialize() 

或選擇要序列

表單元素
$("input").serialize(); 

另外

你可以例如給窗體一個ID和序列化。 - Timotheus Triebl

+0

你可以例如給窗體一個ID和序列化。 – 2015-02-24 18:02:29

+0

您對選擇表單的建議並不能真正回答我提交部分表單的問題。 – Twifty 2015-02-24 18:04:02

+0

對不起,我的意思是它必須是表單控制元素,而不是div – 2015-02-24 18:11:36