提问人:user2232552 提问时间:9/12/2023 最后编辑:jcarrerauser2232552 更新时间:9/13/2023 访问量:19
JQUERY JSON 数据---正确解析嵌套节点的 Google Orgchart
JQUERY JSON data for Google Orgchart --- parsing nested nodes properly
问:
我正在尝试创建一个带有 v 和 f 节点的数组,如图所示。
原始数据看起来像这样,但出于某种原因,我可以用jquery代码正确拆分它。
[{v:'12345678', f:'员工 1'},'','测试']
当我手动定义它时,它会起作用:
var newarray = []; newarray= [ [{v:'12345678', f:'Employee 1'},'','Test'] ];
但是,我无法将此字符串转换为数组以让谷歌组织结构图正确解释它。
“{'v':'12345678','f':'员工 1'},,测试”
不确定是否有办法删除双引号,或者我错过了一个步骤。任何帮助将不胜感激。
=
答:
0赞
user2232552
9/13/2023
#1
我终于弄清楚了正确解释json数据的部分。其中一些需要确保引号在来自 SharePoint 的源数据中的正确位置。
然后它只是使用 JSON。解析功能(参见 addRow 步骤之前)
function OnSuccess(data) {
var org_data = data.value;
//only keep data field from SP list
var listToKeep = ['data'];
org_data.forEach((obj)=>{
Object.keys(obj).forEach((key)=>{
if(listToKeep.indexOf(key) === -1){
delete obj[key];
}
});
});
console.log(org_data);
//Google chart
google.charts.load('current', {
callback: function () {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
//add rows of hierearchy from JSON data---spliting the data into the 3 necessary columns
//loop through all org data records to create table
for ( var i = 0, l = org_data.length; i < l; i++ ) {
//Parse JSON format
var row = JSON.parse(org_data[i].data);
data.addRow(row);
}
评论