0
我不理解jQuery如何處理多維數組。jQuery從大型表單創建/添加到多維數組
我有一個非常大的窗體內的嚮導插件。一步就可以有多達10個標籤,在每個標籤內可以有數十個文本輸入。我試圖使用.each來收集所有文本輸入並將它們排列在多維數組中。
var ItemsArray = [];
var ItemGroup = [];
$('.GroupOfTabs').each(function() { //for each tab
var TabName = $(this).val();
//for each input inside each tab
$('#step-3 tr[room='+TabName+'][object=item]').each(function() {
var value1 = $('#step-3 input[tab='+TabName+'][other=value1]).val();
var value2 = $('#step-3 input[tab='+TabName+'][other=value2]).val();
var value3 = $('#step-3 input[tab='+TabName+'][other=value3]).val();
var value4 = $('#step-3 input[tab='+TabName+'][other=value4]).val();
ItemGroup.push({value1, value2}, {value3, value4});
ItemsArray[TabName].push(ItemGroup);
});
});
HTML看起來是這樣的:
<div class="GroupOfTabs" value="tab1">
<table>
<tr room="tab1" object=item>
<td><input tab=tab1 other=value1></td>
<td><input tab=tab1 other=value2></td>
<td><input tab=tab1 other=value3></td>
<td><input tab=tab1 other=value4></td>
</tr>
</table>
</div>
等許多標籤和更多的投入。
那麼,我希望的是一個很好的有組織的多維數組,像這樣:
ItemsArray
{
Tab1 : { value1 : value2 }, {value3 : value4}
Tab2 : { value1 : value2 }, {value3 : value4}
Tab3 : { value1 : value2 }, {value3 : value4}
}
//An easier way for me to articulate the array structure is php style:
(ItemsArray => array(Tab1 => array(value1 => value2, value3 => value4),
array(Tab2 => array(value1 => value2, value3 => value4),
array(Tab3 => array(value1 => value2, value3 => value4))
我還沒有去打擾顯示實際輸出我得到的是什麼...安全的假設它的可怕的混亂。它甚至不會返回所有文本輸入,只是每個選項卡的第一個輸入。
正確的方法?
在此先感謝!
這將有助於也看到一些示例HTML。在此期間,「RoomName」的定義在哪裏? – BrianS