http://jsfiddle.net/2kwkh2uL/5498/
这是我正在尝试的示例代码,在javascript函数调用上构建jsTree但由于某种原因它没有这样做。
如果我正常加载它会构建树而没有任何问题。 谁能告诉我什么是错的。
function build_tree(tree_data) {
$('#container').jstree({
'core': {
'data': tree_data
}
});
}
$("#gen_tree").click(function() {
var tree_data = "[{ 'id' : 'cases_root', 'parent' : '#', 'text' : 'Cases [0,1,2]', 'case_id' : '0' },{ 'id' : 'my_cases', 'parent' : 'cases_root', 'text' : 'My Cases', 'case_id' : '0' },{ 'id' : 'active', 'parent' : 'my_cases', 'text' : 'active [0,1,2]', 'case_id' : '0' },{ 'id' : '2', 'parent' : 'active', 'text' : 'AXA Investment Managers [0,1,0]', 'case_id' : '0' },{ 'id' : '107157', 'parent' : '2', 'text' : 'Miani, Antonio [13]', 'case_id' : '107157' },{ 'id' : '98', 'parent' : 'active', 'text' : 'Graff Diamonds [0,0,1]', 'case_id' : '0' },{ 'id' : '106560', 'parent' : '98', 'text' : 'HEE JIN, Gong [18]', 'case_id' : '106560' },{ 'id' : '84', 'parent' : 'active', 'text' : 'Optiver Services BV [0,0,1]', 'case_id' : '0' },{ 'id' : '106608', 'parent' : '84', 'text' : 'SAVILUOTO, Antti [24]', 'case_id' : '106608' },]";
build_tree(tree_data);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://static.jstree.com/latest/assets/dist/themes/default/style.min.css" rel="stylesheet" />
<script src="https://static.jstree.com/latest/assets/dist/jstree.min.js"></script>
<div id="container"></div>
<input id='gen_tree' type='button' value='Generate Tree' />
答案 0 :(得分:4)
您的问题是因为您将data
作为字符串给出,但它不是有效的JSON,因此无法通过jsTree库进行反序列化。
要解决问题,要么纠正JSON格式,要么更容易,将数据作为对象提供。试试这个:
function build_tree(tree_data) {
$('#container').jstree({
'core': {
'data': tree_data
}
});
}
$("#gen_tree").click(function() {
var tree_data = [{
'id': 'cases_root',
'parent': '#',
'text': 'Cases [0,1,2]',
'case_id': '0'
}, {
'id': 'my_cases',
'parent': 'cases_root',
'text': 'My Cases',
'case_id': '0'
}, {
'id': 'active',
'parent': 'my_cases',
'text': 'active [0,1,2]',
'case_id': '0'
}, {
'id': '2',
'parent': 'active',
'text': 'AXA Investment Managers [0,1,0]',
'case_id': '0'
}, {
'id': '107157',
'parent': '2',
'text': 'Miani, Antonio [13]',
'case_id': '107157'
}, {
'id': '98',
'parent': 'active',
'text': 'Graff Diamonds [0,0,1]',
'case_id': '0'
}, {
'id': '106560',
'parent': '98',
'text': 'HEE JIN, Gong [18]',
'case_id': '106560'
}, {
'id': '84',
'parent': 'active',
'text': 'Optiver Services BV [0,0,1]',
'case_id': '0'
}, {
'id': '106608',
'parent': '84',
'text': 'SAVILUOTO, Antti [24]',
'case_id': '106608'
}];
build_tree(tree_data);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://static.jstree.com/latest/assets/dist/themes/default/style.min.css" rel="stylesheet" />
<script src="https://static.jstree.com/latest/assets/dist/jstree.min.js"></script>
<div id="container"></div>
<input id='gen_tree' type='button' value='Generate Tree' />