EasyUI ComboTree
作者:張勇波
設(shè)置欄目樹選中無效,在用戶點(diǎn)擊勾選復(fù)選框之前觸發(fā),返回false可以取消選擇動(dòng)作。
- <div class="easyui-dialog" id="user_dialog_role" title="選擇用戶功能權(quán)限" style="background-color:#fcfcfc;width:20%;height:85%;"
- data-options="closed:true,modal:true,
- buttons:[{
- text:'選 擇',
- handler:function(){
- getChecked();
- $('#user_dialog_role').dialog('close');
- }
- }]">
- <form id="user_form_role" name="user_form_role" method="post">
- <div class="easyui-panel" fit="false" border="false">
- <ul id="user_tree_role" checkbox="true" cascadeCheck="false"
- style="background-color:#fafafa;"></ul>
- <input type="hidden" id="tree_type">
- </div>
- </form>
- </div>
- function userRole(type){
- $('#user_tree_role').tree({
- url: '${request.contextPath}/menu/tree',
- onLoadSuccess: function (e, node) {
- treeChecked(node, type);
- },
- onBeforeCheck: function (e, checked) {//設(shè)置欄目樹選中無效,在用戶點(diǎn)擊勾選復(fù)選框之前觸發(fā),返回false可以取消選擇動(dòng)作
- /* if (type == 'new') {
- if (e.attributes.virtualColumn == 'true') {
- return false;
- }
- } else {
- if (e.attributes.virtualColumn == 'true' || e.id == $('#column_tree').tree('getSelected').id) {
- return false;
- }
- } */
- }
- });
- $('#tree_type').val(type);
- $('#user_dialog_role').dialog('open');
- }
- function treeChecked(node, type) {//遍歷節(jié)點(diǎn),符合要求的更新對(duì)應(yīng)節(jié)點(diǎn)
- var menuVal = '';
- if (type == 'add') {
- menuVal = $('#menuID').val() + ",";
- } else {
- menuVal = $('#menuID_edit').val() + ",";
- }
- $.each(node, function (idx, val) {
- if (val instanceof Object) {
- var nodes = $('#user_tree_role').tree('find', val.id);
- if (nodes != null) {
- if (menuVal.indexOf(val.id + ",") != -1) {//選中已勾選的欄目
- $('#user_tree_role').tree('update', {target: nodes.target, checked: true});
- }
- }
- }
- if (val.children) {
- treeChecked(val.children, type);//如果還有子節(jié)點(diǎn)則繼續(xù)遍歷
- }
- });
- }
- function getChecked() {
- var nodes = $('#user_tree_role').tree('getChecked');
- var s = '';
- var v = '';
- for (var i = 0; i < nodes.length; i++) {
- if (s != '') s += ',';
- s += nodes[i].text;
- if (v != '') v += ',';
- v += nodes[i].id;
- }
- var t=$('#tree_type').val();
- if(t=='add'){
- $('#menuID').val(v);
- $('#menu').textbox('setValue', s);
- }
- if(t=='edit'){
- $('#menuID_edit').val(v);
- $('#menu_edit').textbox('setValue', s);
- }
- }
【本文是51CTO專欄作者張勇波的原創(chuàng)文章,轉(zhuǎn)載請(qǐng)通過51CTO獲取作者授權(quán)】
責(zé)任編輯:武曉燕
來源:
上下求索的Z先生博客