jstree java实例_JavaScript JsTree实例

1 var RightTree= function() { };2 RightTree.prototype ={3 //初始化权限树

4 InitRightTree: function() {5 $.ajax({6 type: "get",7 url: "/Handler/RoleHandler.ashx",8 dataType: "json",9 data: { type: 6, _: Math.random() },10 async: false,11 success: function(result) {12 if (result.ReturnType == true) {13 var objs = eval(‘(‘ + result.ReturnData + ‘)‘);14 $("#treeCheckbox").jstree({15 "core": { "data": objs },16 "types": {17 ‘default‘: {18 ‘icon‘: ‘fa fa-folder‘

19 },20 ‘file‘: {21 ‘icon‘: ‘fa fa-file‘

22 }23 },24 "checkbox": {25 "keep_selected_style": false

26 },27 "plugins": ["checkbox"]28 });29 }30 }31 });32 },33 //获取已分配权限

34 GetRightTree: function(roleId) {35 $.ajax({36 type: "get",37 url: "/Handler/RoleHandler.ashx",38 dataType: "json",39 data: { type: 5, Id: roleId, _: Math.random() },40 async: false,41 success: function(result) {42 if (result.ReturnType == true) {43 //设置权限树Tree

44 $.jstree.reference(‘#treeCheckbox‘).deselect_all();45 var objs = eval(‘(‘ + result.ReturnData.pageJson + ‘)‘);46 for (var i = 0; i < objs.length; i++) {47 var obj =objs[i];48 $.jstree.reference(‘#treeCheckbox‘).select_node("Page_" +obj.id);49 }50 objs_func = eval(‘(‘ + result.ReturnData.funcJson + ‘)‘);51 $("#treeCheckbox").bind(‘click.jstree‘, function(event) {52 var eventNodeName =event.target.nodeName;53 if (eventNodeName == ‘A‘) {54 var $subject =$(event.target).parent();55 if ($subject.find(‘ul‘).length > 0) {56 } else{57 var id = $(event.target).parents(‘li‘).attr(‘id‘);58 if (id.indexOf("Page_") == 0) {59 id = id.substring(5);60 $("#funcContainer").text("");61 for (var i = 0; i < objs_func.length; i++) {62 var obj =objs_func[i];63 if (obj.parent ==id) {64 var isChecked = "";65 var className = "btn-default";66 if (obj.isChecked == "True") {67 isChecked = "checked=‘checked‘ ";68 className = "btn-primary";69 }70 var str = "" + obj.text + "&nbsp";71 $("#funcContainer").append(str);72 }73 }74 //点击操作按钮

75 $(".btnFunc").unbind("click").click(function(event) {76 var eventNodeName =event.target.nodeName;77 if (eventNodeName == ‘INPUT‘ || eventNodeName == ‘A‘) {//“LABEL”

78 var fid = $(this).attr("id").substring(9);79 if ($("#check_Func_" + fid).attr("checked")) {80 $("#check_Func_" + fid).attr("checked", false);81 $("#btn_Func_" + fid).removeClass("btn-primary");82 $("#btn_Func_" + fid).addClass("btn-default");83 } else{84 $("#check_Func_" + fid).attr("checked", true);85 $("#btn_Func_" + fid).removeClass("btn-default");86 $("#btn_Func_" + fid).addClass("btn-primary");87 }88 var count = 0;89 for (var i = 0; i < objs_func.length; i++) {90 var obj =objs_func[i];91 if (obj.id == $(this).attr("id").substring(4)) {92 obj.isChecked = $("#check_Func_" + fid).attr("checked") ? "True" : "False";93 }94 if (obj.parent == id && obj.isChecked == "True") {95 count++;96 }97 }98 if(count) {99 $.jstree.reference(‘#treeCheckbox‘).select_node("Page_" +id);100 }101 else{102 $.jstree.reference(‘#treeCheckbox‘).deselect_node("Page_" +id);103 }104 }105 });106 $("#btnCheckAll").unbind("click").click(function(event) {107 var eventNodeName =event.target.nodeName;108 if (eventNodeName == ‘INPUT‘ || eventNodeName == ‘A‘) {//"LABEL"

109 if ($(this).attr("checked")) {110 $(this).attr("checked", false);111 $("input[type=‘checkbox‘]").attr("checked", false);112 $(".btnFunc").attr("class", "btn btnFunc btn-corner btn-default");113 $.jstree.reference(‘#treeCheckbox‘).deselect_node("Page_" +id);114 }115 else{116 $(this).attr("checked", true);117 $("input[type=‘checkbox‘]").attr("checked", true);118 $(".btnFunc").attr("class", "btn btnFunc btn-corner btn-primary");119 $.jstree.reference(‘#treeCheckbox‘).select_node("Page_" +id);120 }121 for (var i = 0; i < objs_func.length; i++) {122 var obj =objs_func[i];123 if (obj.parent ==id) {124 obj.isChecked = $(this).attr("checked") ? "True" : "False";125 }126 }127 }128 });129 }130 }131 }132 });133 }134 }135 });136 },137 //保存配置的权限

138 SaveRightTree: function(roleId) {139 var funcArr = newArray();140 for (var i = 0; i < objs_func.length; i++) {141 if (objs_func[i].isChecked == "True") {142 funcArr.push(objs_func[i].id);143 }144 }145 var treeArr = newArray();146 var treeSelect = $.jstree.reference(‘#treeCheckbox‘).get_selected(true);147 for (var i = 0; i < treeSelect.length; i++) {148 if ($.inArray(treeSelect[i].id, treeArr) < 0) {149 treeArr.push(treeSelect[i].id);150 }151 if (treeSelect[i].id.indexOf("Page_") < 0 && treeSelect[i].parent != "#" && $.inArray(treeSelect[i].parent, treeArr) < 0) {152 treeArr.push(treeSelect[i].parent);153 }154 }155 var funcList = funcArr.join(‘,‘);156 var treeList = treeArr.join(‘,‘);157 $.ajax({158 type: "post",159 url: "/Handler/RoleHandler.ashx",160 dataType: "json",161 data: { type: 7, RoleId: roleId, FuncList: funcList, TreeList: treeList, _: Math.random() },162 async: false,163 cache: false,164 complete: function() { },165 success: function(result) {166 if(result.ReturnType) {167 alert(result.ReturnMsg);168 }169 }170 });171 }

172 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值