2014-06-16 46 views
1

我的extJS表單中有一個多選組合框。在extJS中將數組轉換爲JSON

它在提交時返回一個字符串數組。

我想將其轉換爲json(以特定格式)。

例如,它返回以下數組中:

categories : ['ABC','XYZ'] 

我想要的JSON的格式如下:

"categories":[{"name":"ABC"},{"name":"XYZ"}] 

是否有ExtJS的任何方法來做到這一點? 如何實現這個使用JavaScript?

回答

1

您可以使用香草JS的Array.map方法:

var out = JSON.stringify(categories.map(function (el) { 
    return { name: el }; 
})); 

輸出

[{"name":"ABC"},{"name":"XYZ"}] 

Demo

+0

這很好用!謝謝 :) – user3745429

1

爲什麼不使用

selected = []; 
Ext.each(categories, function (item) { 

    selected.push({ 
      'name': item 
    }); 
}); 

Ext.encode(selected)