2015-07-21 44 views
0

我有一個數組,我有另一個在一個循環中以推入在一個循環設定2維陣列到輸入隱藏字段

array1[ [box1, type1, 10], [box1, type2, 12] ] 
array2[ [box2, type1, 10], [box2, type2, 12], [box2, type2, 12] ] 

var curArray = new Array(); 

這樣:

var testarray = new Array('box1', 'type1', 10); 
curArray.push(testarray); 

,我必須張貼所以我把它放在隱藏的領域。 的Array.push的作品時,我CONSOLE.LOG(curArray),但如果你通過

$('hdnField').val(curArray) 

將其設置爲隱藏字段不再成爲一個多維數組。

是否有另一種方法可以做到這一點?

+2

這是一個Ajax的帖子?如果是的話可以添加數據在Ajax代碼內,並不需要隱藏字段 – charlietfl

+0

嗨@charlietfl,感謝您的答覆。不,它是一個表單發佈 – vinz

+0

然後回答下面解析到JSON是最好的方法,解碼在服務器的JSON如果需要與數組那裏工作 – charlietfl

回答

3

試試這個:

$('hdnField').val(JSON.stringify(curArray)); 
+1

嗨,它將它變成一個字符串,然後我會在服務器中解碼它? – vinz

+0

是的,您可以輕鬆找到服務器語言中的JSON解析器庫 –

1

您可以嘗試JSON.stringify()

$('hdnField').val(JSON.stringify(curArray)); 

工作的呢?

+0

不幸的是,它沒有工作。有一個奇怪的錯誤「意外的令牌b」。我確定他們沒有任何額外的語法,我輸錯了。 – vinz

+1

它不解析,但串行化。像$('#hdnField').val(JSON.stringify(curArray)); – Sayris

+0

解析是錯誤的... – epascarello