2014-09-11 106 views
2

沒有人知道如何將頂級json添加到現有對象嗎?將頂級JSON添加到Javascript對象

這是我有:

var url = "http://domain.com/gettxt"; 
     $.ajax({ 
      url: url, 
      dataType: "json", 
      success: function (data, textStatus, jqXHR) { 
       rootData = data; 
       renderView(); 
      }, 
      error: function (jqXHR, textStatus, errorThrown) { 
       alert("error" + errorThrown) 
      } 
     }); 

在這一點上,數據包含以下內容:

[{"id":1,"title":"Johnson"}] 

,我需要它是這樣的:

{ "record": [ {"id":1}, {"title":"Johnson"} ] } 

在換言之:

rootData = "{ "record":" + data + "}"; 

有誰知道我該怎麼做以上?不幸的是,在JavaScript之前添加頂層並不是一種選擇,謝謝。

回答

2

你可以直接添加這樣的對象類型,

rootData = { record: data }; 

你的最終代碼會

var url = "http://domain.com/gettxt"; 
    $.ajax({ 
     url: url, 
     dataType: "json", 
     success: function (data, textStatus, jqXHR) { 
      rootData = { record: data }; 
      renderView(); 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
      alert("error" + errorThrown) 
     } 
    }); 
+0

非常感謝你@gopalakrishnan對你的好樣本,即偉大工程! – carol1287 2014-09-11 08:45:09

1

試試這個

var arr = [{"id":1,"title":"Johnson"}]; 
var obj ={}; 
obj.record = arr; 
console.log(obj); 
2

你可以使用對象文本來做到這一點:

rootData = { record: data }; 

所以,你的代碼應該是這樣的:

success: function (data, textStatus, jqXHR) { 
    rootData = { record: data }; 
    renderView(); 
}, 
1
a = [{"id":1,"title":"Johnson"}] 
root = {record: a}