<link rel="stylesheet" type="text/css" href="js/assets/global/plugins/jstree/dist/themes/default/style.min.css" />
<script type="text/javascript" src="js/assets/global/plugins/jstree/dist/jstree.min.js"></script>
<div style="overflow-y: auto; overflow-x: auto; width: 100%; height: 534px;" id="jstree_bsbm_div"></div>
//构造树型结构
var handleTree = function() {
getTreeData();
$("#jstree_bsbm_div").on('select_node.jstree', function(node,selected,event) {
//绑定选中事件处理函数
id = selected.node.id;
parent = selected.node.parent;
jc = selected.node.original.jc;
freshtable();
}).on('refresh.jstree', function(node,selected,event) {
//刷新事件处理函数
getTreeData();
});
};
//获取树形数据
var getTreeData = function(){
var aData = {
type: "2",
roledm: roledm,
}
$.ajax({
type : "POST",
url : "basic/getQxTree",
dataType : "json",
contentType : 'application/json', //定义格式
data : JSON.stringify(aData), //把json转为String传递给后台
success : function(data) {
$('#jstree_bsbm_div').data('jstree', false).empty();
$("#jstree_bsbm_div").jstree({
'core': {
'data': data,
},
plugins: [ "wholerow", "checkbox","types","themes"],
"checkbox": {
"keep_selected_style": false,//是否默认选中
},
})
// 获取树
var menuTrees = $('#jstree_bsbm_div').jstree(true);
// 清空级联关系
var oldCascade = menuTrees.settings.checkbox.cascade;
menuTrees.settings.checkbox.cascade = '';
// 重置级联关系
setTimeout(function () {
menuTrees.settings.checkbox.cascade = oldCascade;
}, 500);
},
error : function(e) {
Metronic.alert({
type: 'danger',
icon: 'warning',
message: '树形数据获取失败!',
place: 'prepend',
closeInSeconds:5,
container:'#profileAlertsMsg',
focus:true
});
}
});
};
$("#btn_save").on("click",function() {
var ref = $('#jstree_bsbm_div').jstree(true);
ref.get_all_checked = function(full) {
var tmp=new Array;
for(var i in this._model.data){
if(this.is_undetermined(i)||this.is_checked(i)){tmp.push(full?this._model.data[i]:i);}
}
return tmp;
};
// var nodes = ref.get_checked(); //使用get_checked方法
// var checkedNodes = ref.get_all_checked(true); //获取所有选中节点值,返回是数组(父节点,子节点)
var nodes=ref.get_all_checked();//获取所有选中节点id(父节点,子节点)
aData = {
roledm: roledm,
permissions: nodes,
};
$.ajax({
cache : false,
type : 'POST',
url : 'basic/addRolePermission',
dataType : "json",
contentType : 'application/json', //定义格式
data : JSON.stringify(aData), //把json转为String传递给后台
error : function(aData) {
cleaninput();
},
success : function(data) {
Metronic.alert({
type: 'success',
icon: 'success',
message: data.message,
place: 'prepend',
closeInSeconds:5,
container:'#rolePermissionproAlertsMsg',
focus:true
});
}
});
$("#role_permission").modal('hide');
return false;
});