estoy usando esto con jsTree en jQuery 1.4 por el momento, he aquí un ejemplo, es muy sin comprimir para que sea un poco más claro:
$("#QuickNav").tree({
data: {
async: true,
type: "json",
opts: {
method: "POST",
url: rootPath + "QuickNav"
}
},
callback: {
beforedata: function(NODE, TREE_OBJ) {
return $(NODE).attr("id") === "" ?
{ id: $(NODE).find("a:first").attr("id")} :
{ id: $(NODE).attr("id") || 0 };
},
onchange: function(NODE) {
document.location.href = $(NODE).children("a:first").attr("href");
}
}
});
Una muestra de JSON estoy volviendo de que Url:
[{
"data": {
"title": "Title (<b link='/Thing/200' class='gtp'>Go to Page</b>)",
"attributes": {
"href": "#",
"id": "200"
}
},
"state": "closed"
}]
el ello no es la única cosa que se pasa a mis servicios web devoluciones de llamada de método, lo que resulta en JSON como esto de ser devuelto:
[{
"data": {
"title": "Sites",
"attributes": {
"href": "#",
"class": "TreeTitle"
}
},
"state": "open",
"children": [
{
"data": {
"title": "00001 - Test Thing",
"type": "link",
"attributes": {
"href": "/Site/39063",
"class": "TL"
}
}
},
{
"data": {
"title": "00002 - Test Thing 2",
"type": "link",
"attributes": {
"href": "/Site/39069",
"class": "TL"
}
}
}
]
}]
@vandalo - Lo mejor que me ayuda es un ejemplo decentemente prolijo, intenté explicarlo a continuación ... comente las preguntas que surjan y trataré de responderlas. –