2010-07-23 99 views
0

我有一個無序列表,每個列表項都有一個id(id =「6〜OriginalName」) - 當我在這個列表上做一個toArray時,我得到一個不錯的數組,每個項目看起來像「6〜OriginalName」可以稍後解析。獲取列表中的所有文本框值(jQuery Sortable)?

$("#roleList").sortable('toArray') 

的問題是,現在我已經嵌入在每個列表一個TextBox,其值的ORIGINALNAME,用戶現在可以編輯名稱。但是「toArray」只會根據id創建數組。

如何從文本框中創建一個漂亮的「6〜UserEditedName」數組?

如果必須手動完成,我會 - toArray像以前一樣,以某種方式創建一個基於所有文本框值的數組並結合2.但我不知道如何訪問每個文本框。

哦 - 用戶也可以在列表中(因此嵌入式文本框)添加新的項目,因爲我有一個append()事情以及:P

我希望這是有道理的。

用一堆texboxes來圖片列表,您可以在其中編輯列表。

回答

0

由於您沒有發佈完整的代碼,因此此解決方案不精確。你可以做的是使用適當的jQuery選擇器找到所有的文本框,然後針對選擇運行一個函數來構建你的數組。例如:

var myArray = new Array(); 
$('#roleList input.myTextBox').each(function() { 
var $textBox = $(this); 
myArray.push($textBox.attr('id') + '~' + $textBox.val()); 
$textBox = null; 
}); 
+0

工作完美。非常感謝。 – Jerrold 2010-07-23 21:43:58

0

您可以在數據級別上工作,然後在發生更改時呈現(或修改)列表。

如果你的數據比較複雜,你可以嘗試j0rder http://github.com/danstocker/jorder,因爲它旨在處理快速搜索,在JS端排序&分組。