问题
I have this structure in json I can not be modified by request.
{
"Object": [
{
"url": "http://www.google.com"
}
],
"id": 1,
"name": "Redirection Rule",
"Object": {
"frequency": 1,
"trigger": 1
},
"Object": {
"http": "Redirect Url",
"response": 301
}
}
I need to use this structure to populate a jstree . I just need to use the "id" fields and "name", how do I set jstree to use "name" instead of "text" as a node name ?
回答1:
Either:
1) use the jQuery dataFilter
option (this means defining a function for dataFilter
in your core.data
jsTree config),
or
2) set core.data
itself to a function, manually make the request and transform it like so:
$('#your-tree').jstree({
core : {
data : function (node, cb) {
$.ajax({ url : ... }).done(function (data) {
cb([{ "id" : data.id, "text" : data.name }])
});
}, ...
You can find more info on setting core.data
to a function here:
https://github.com/vakata/jstree#populating-the-tree-using-a-callback-function
来源:https://stackoverflow.com/questions/30310474/jstree-with-custom-json-data