先清空所有的内容。可以放在鼠标点击的触发处理函数中,也可以放在模式对话框启动的时候,如果是后者,会出现之前的列表内容,然后才清空,视觉效果不好。
$("#authorityTree").empty();
模式对话框启动时处理函数,移除之前绑定的数据,然后再移除绑定的事件,最后启动数据抓取和处理流程。
$("#modal-table").on("shown.bs.modal", function() {
$("#authorityTree").removeData("fu.tree");
$("#authorityTree").unbind('click.fu.tree');
$('#authorityTree').ace_tree({
dataSource : remoteDateSource,
multiSelect : true,
loadingHTML : '<div class="tree-loading"><i class="ace-icon fa fa-refresh fa-spin blue"></i></div>',
'open-icon' : 'ace-icon tree-minus',
'close-icon' : 'ace-icon tree-plus',
'selectable' : true,
'selected-icon' : 'ace-icon fa fa-check',
'unselected-icon' : 'ace-icon fa fa-times',
cacheItems : false,
folderSelect : false
});
});