2012-07-17 156 views
1

我有一個multipe select作爲我的輸入表單的一部分,我想通過jQuery AJAX提交它的選定值。

我試過使用下面的語法。

$('#multipleselect').val().join('|'); 

這有效,但我遇到的問題是用戶不需要從多重選擇中選擇任何東西。如果他們沒有,我會得到一個錯誤,因爲你不能加入一個空對象。

有什麼建議?

還請記住,還有其他值正在提交。例如:

data: "name=" + $("#name").val() + "&multipleselect=" + $("#multipleselect").val().join('|'); 
+0

只是檢查是否爲空,你加入它 – Musa 2012-07-17 02:59:17

+0

我可以做之前,在數據串?或者我必須將其分配給var? – 2012-07-17 03:00:25

回答

7

可以使用serialize方法:

編碼的一組表格元素作爲提交的字符串的。

var data = $('form').serialize() 
+0

這是我遇到的另一個問題。我是.load() - 將表單放入一個jQuery UI對話框中,並且在使用警報進行測試時,我似乎無法獲得序列化表單。 – 2012-07-17 03:04:39

+0

@MikeGeorge注意你的表單元素必須有名稱屬性。 – undefined 2012-07-17 03:07:08

+0

哦,我認爲它自己的形式只需要一個名字。我會去嘗試這個,如果它有效,我會標記你的答案。謝謝! – 2012-07-17 03:08:25