tree实现单选功能

来源:互联网 发布:怀化学院教务网络系统 编辑:程序博客网 时间:2024/06/05 14:51
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<script type="text/javascript">
$(function() {
$('#orgRoleTree').tree({
checkbox : true,
url : url=encodeURI('userController.do?getPostLevelTree&userId='+$('#userId').val()),
onLoadSuccess : function(node) {
expandAll();
},

onSelect: function (node) {
                var cknodes = $('#orgRoleTree').tree("getChecked");
                for (var i = 0; i < cknodes.length; i++) {
                    if (cknodes[i].id != node.id) {
                        $('#orgRoleTree').tree("uncheck", cknodes[i].target);
                    }
                }
                if (node.checked) {
                    $('#orgRoleTree').tree('uncheck', node.target);


                } else {
                    $('#orgRoleTree').tree('check', node.target);


                }


            },
            onLoadSuccess: function (node, data) {
                $(this).find('span.tree-checkbox').unbind().click(function () {
                    $('#orgRoleTree').tree('select', $(this).parent());
                    return false;
                });
            }
});
$("#functionListPanel").panel(
{
title :'<t:mutiLang langKey="岗位级别列表"/>',
tools:[{iconCls:'icon-save',handler:function(){mysubmit();}}]
}
);
});
function mysubmit() { // 提交
var userId = $("#userId").val();
var postLevels = GetNode();
doSubmit("userController.do?saveEmpPostLevel&postLevel=" + postLevels + "&userId=" + userId);
}
    /**
     * 获取 选中的节点 并返回
     * @returns {string} 节点id,多个id已逗号分割
     * @constructor
     */
    function GetNode() {
var node = $('#orgRoleTree').tree('getChecked');
var cnodes = '';
var pnodes = '';
var pnode = null; //保存上一步所选父节点
for ( var i = 0; i < node.length; i++) {
if ($('#orgRoleTree').tree('isLeaf', node[i].target)) {
cnodes += node[i].id + ',';
pnode = $('#orgRoleTree').tree('getParent', node[i].target); //获取当前节点的父节点
while (pnode!=null) {//添加全部父节点
pnodes += pnode.id + ',';
pnode = $('#orgRoleTree').tree('getParent', pnode.target); 
}
}
}
cnodes = cnodes.substring(0, cnodes.length - 1);
pnodes = pnodes.substring(0, pnodes.length - 1);
return cnodes + "," + pnodes;
}
/**
* 展开所有节点
     */
function expandAll() {
var node = $('#orgRoleTree').tree('getSelected');
if (node) {
$('#orgRoleTree').tree('expandAll', node.target);
} else {
$('#orgRoleTree').tree('expandAll');
}
}
    /**
     * 选择所有节点
     */
function selecrAll() {
var node = $('#orgRoleTree').tree('getRoots');
for ( var i = 0; i < node.length; i++) {
            $('#orgRoleTree').tree("check",node[i].target);
   }
}
    /**
     * 重置树
     */
function reset() {
$('#orgRoleTree').tree('reload');
}


$('#selecrAllBtn').linkbutton({
});
$('#resetBtn').linkbutton({   
});   
</script>
<div class="easyui-layout" fit="true">
    <div region="center" style="padding:0px;border:0px">
        <div class="easyui-panel" style="padding:0px;border:0px" fit="true" border="false" id="functionListPanel">
            <input type="hidden" name="userId" value="${userId }" id="userId">
            <ul id="orgRoleTree"></ul>
        </div>
    </div>
</div>
0 0
原创粉丝点击