Ban đầu, tôi đã sử dụng "tùy chọn" với initAjax để thực hiện cuộc gọi ajax. Tuy nhiên, kể từ khi tôi đã phải hiển thị một thông báo lỗi trong trường hợp có một phản ứng trống từ máy chủ sau khi tải lại, tôi quyết định đi theo tuyến đường ajax thông thường. Tôi thực hiện cuộc gọi ajax, nhận phản hồi và sau đó tải lại cây. Vì vậy, tôi đã làm nó như thế này trong tập tin javascript tôi
var myObj = {getDynaTree :function(){
//Refresh the dynatree
$("#dynaTree").dynatree("option", "children", null);
$.ajax({
url: "myurl",
type: "POST",
dataType: "application/json",
headers:{'Accept' :'application/json', 'Content-Type': 'application/json' },
data : JSON.stringify(myData),
//handle the response
complete : function(treeData)
{
$("#dynaTree").dynatree("option", "generateIds", true);
var parsedTreeData = JSON.parse(treeData.responseText);
if(parsedTreeData.length ==0) {
var parsedTreeData = [{title: "No documents found for the search criteria, please revisit the criteria",
isFolder: false, tooltip: "No documents found for the search criteria, please revisit the criteria" }];
}
$("#dynaTree").dynatree("option", "children", parsedTreeData);
$("#dynaTree").dynatree("getTree").reload();
}
});
}}
gọi hàm
$("#myLink").click(function() { myObj.getDynaTree(); }
Các dynatree được khởi tạo trong một riêng biệt javascript tập tin
//Initialization for the dyna tree.
var treeData = [{title: "Dynamic Tree Demo",isFolder: false, tooltip: "Here, is your Dynamic Tree!" }];
jQuery(document).ready(function() {
initReqActions(treeData);
});
initReqActions= function(myTree){
$("#dynaTree").dynatree({
checkbox: false,
selectMode: 2,
// create IDs for HTML elements that are generated
generateIds: true,
cookie: {
expires :-1
},
children: myTree,
onQuerySelect: function(select, node) {
if(node.data.isFolder)
return false;
},
onClick: function(node, event) {
if(! node.data.isFolder)
node.toggleSelect();
},
onDblClick: function(node, event) {
node.toggleExpand();
},
onKeydown: function(node, event) {
if(event.which == 32) {
node.toggleSelect();
return false;
}
}
});
}
"cây" ở đây là gì và làm cách nào tôi có thể truy cập vào nó ?? –
bạn có ở đó không ?? –
Tôi đã thêm bản chỉnh sửa để rõ ràng hơn. – longstaff