以正确的格式从多维Javascript数组创建JSON对象以提交到Rails
大家好,我正在尝试创建一个javascript多维数组,如下所示以正确的格式从多维Javascript数组创建JSON对象以提交到Rails,javascript,jquery,ruby-on-rails,arrays,Javascript,Jquery,Ruby On Rails,Arrays,大家好,我正在尝试创建一个javascript多维数组,如下所示 $('#rfp_import_table > tbody > tr').each(function(row) { TableData[row] = { "sheet_name": $('#sheet_name_' + i).text(), "last_row": $('#sheet_last_row_' + i).text(), "sheet_id": $(
$('#rfp_import_table > tbody > tr').each(function(row) {
TableData[row] = {
"sheet_name": $('#sheet_name_' + i).text(),
"last_row": $('#sheet_last_row_' + i).text(),
"sheet_id": $('#sheet_id_' + i).text(),
"sheet_import": $('#sheet_import_' + i).is(':checked'),
"sheet_import_column": $('#sheet_import_column_' + i).val()
}
i++;
});
TableData = $.toJSON(TableData);
这将创建一个如下所示的数组
[
{
"sheet_name": "Offeror Instructions",
"last_row": "99",
"sheet_id": "0",
"sheet_import": true,
"sheet_import_column": "C"
},
{
"sheet_name": "S3 SAI_Availability_Scale",
"last_row": "22",
"sheet_id": "38",
"sheet_import": true,
"sheet_import_column": "C"
},
{
"sheet_name": "S4 SAI_Deploy_and_Admin",
"last_row": "21",
"sheet_id": "39",
"sheet_import": true,
"sheet_import_column": "C"
}
]
我需要一个可以提交到rails的数组(使用ajax$jquery而不是form_for..)。我相信我需要的格式是
[“sheets”:
{
"sheet_name": "Offeror Instructions",
"last_row": "99",
"sheet_id": "0",
"sheet_import": true,
"sheet_import_column": "C"
},
{
"sheet_name": "S3 SAI_Availability_Scale",
"last_row": "22",
"sheet_id": "38",
"sheet_import": true,
"sheet_import_column": "C"
},
{
"sheet_name": "S4 SAI_Deploy_and_Admin",
"last_row": "21",
"sheet_id": "39",
"sheet_import": true,
"sheet_import_column": "C"
}
]
修改javascript以生成正确格式的正确方法是什么
提前感谢。您需要的格式不是有效的JavaScript对象。我想我应该澄清一下,问题是将数组转换为JSON对象,很抱歉造成混淆。没有“JSON对象”这样的东西JSON是一种数据格式,恰好基于JavaScript对象的语法。JSON格式的对象?
var sampleObj1 = {
"a": {
"id": "1",
"gravatar": "03ce78e04102c67d6144"
},
"b": {
"id": "1",
"name": 'asd'
},
"c": {
"id": "1702c3d0-df12-2d1b",
"name": "Jeff"
}
};
var sampleTestArr = Object.keys(sampleObj1).map(function(data){
return sampleObj1[data];
});