Tôi đang sử dụng này với jsTree trong jQuery 1,4 vào lúc này, đây là một ví dụ, nó rất không nén để làm cho nó một chút rõ ràng hơn:
$("#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");
}
}
});
Một ví dụ về JSON Tôi đang quay trở lại từ Url đó:
[{
"data": {
"title": "Title (<b link='/Thing/200' class='gtp'>Go to Page</b>)",
"attributes": {
"href": "#",
"id": "200"
}
},
"state": "closed"
}]
Id có điều duy nhất được chuyển vào cuộc gọi lại phương thức dịch vụ web của tôi, dẫn đến JSON như thế này được trả lại:
[{
"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"
}
}
}
]
}]
Nguồn
2010-03-11 18:49:05
@vandalo - Điều tốt nhất giúp tôi là một ví dụ dài dòng, tôi đã cố gắng cung cấp điều đó bên dưới ... nhận xét câu hỏi nào sẽ trả lời và tôi sẽ cố gắng trả lời chúng. –