1、問題背景
一般出現在加載的時候,傳遞參數給背景,進行資料篩選,然後在加載tree渲染資料。所謂動态參數,可以是你的上一級節點node,或者是根節點node。
2、涉及方法
onBeforeLoad(node,param),需要給的參數在這個方法後面指派,比如:
var rootNode = $(this).tree('getRoot',node.target);
param.typeId = rootNode.id;
這樣typeId 就作為動态參數,傳遞給了背景,背景擷取typeId這個參數,進行資料篩選以達到目的。
$("#typeTree").tree({
url: "${basePath}/cascade/cascadePolicyAction_getDataRuleJsonTree.do",
method: 'get',
cascadeCheck:true,
checkbox:false,
animate:true,
/* queryParams:{}, */
loadFilter: function(data){
if (data.treeNodes){
return data.treeNodes;
} else {
return data;
}
},
onSelect:function(node){
if($("#"+node.id).length != 0){
$("#"+node.id).remove();
}else{
var html = '<div id="'+node.id+'" class="card-box shcemeinfocheck active">'
+'<div class="card-box-content"><p>'+node.text+'</p></div>'
+'</div>';
$("#typeDiv").append(html);
}
setID(node.id);
},
onBeforeLoad:function(node,param){
param.type = type;
}
})
$("#typeTree").tree("reload");//重新加載資料