Javascript 如何将变量分配给json对象

Javascript 如何将变量分配给json对象,javascript,jquery,json,Javascript,Jquery,Json,我试图将一个来自父div的变量分配给子表的json字符串,但似乎无法直接获取javascript 我想看到的,或是一些变化: {"blocks":[{"id":"115",courses:[{"Semester":"S,F","Credits":"3","Subject":"ACT"}‌​, {"Semester":"F","Credits":"6","Subject":"CSI"}]}] 到目前为止,我使用的jQuery $('#update').click(function (e){

我试图将一个来自父div的变量分配给子表的json字符串,但似乎无法直接获取javascript

我想看到的,或是一些变化:

{"blocks":[{"id":"115",courses:[{"Semester":"S,F","Credits":"3","Subject":"ACT"}‌​, {"Semester":"F","Credits":"6","Subject":"CSI"}]}] 
到目前为止,我使用的jQuery

$('#update').click(function (e){
    var table = $('#table').tableToJSON();
    var blockId = $('#table').closest('div.Block').attr('id');
    table = {"block":table};
    document.getElementById('courseList').value = JSON.stringify(table);
}

我不知道如何在对象中添加所需的变量?如何插入blockId?

我假设括号符号是您真正想要的:

$('#update').on('click', function(){
    var table   = $('#table').tableToJSON();
    var blockId = $('#table').closest('div.Block').attr('id');
    var table2  = {};

    table2[blockId] = table;

    $('#courseList').val( JSON.stringify(table2) );
});

键入
$('#table)
将其更改为
$('#table')
。您忘记了关闭引号。您试图再次添加的变量在哪里?blockId应该插入到哪里?在问题中,
115
将是id所在的位置。或者取出
只需要id。类似于
115=[…]
的东西不是有效的JSON,你不能有一个
=
好的,可以。但是现在我很好奇如何使这个JSON有效?如果
tableToJSON()
方法创建了一个对象,这不是问题,一旦对象字符串化,它就是有效的JSON。如果
tableToJSON()
方法创建了一个字符串而不是一个对象,在使用它之前,您必须使用
JSON.parse()
对其进行解析。类似于“{”blocks:[{”id:“115”,courses:[{”sement:“S,F”,“Credits:“Credits:“3”,“Subject:“ACT”},{”sement:“F”,“Credits:“6”,“Subject:“CSI”}]`更倾向于JSON格式?