您的位置:首页 > 产品设计 > UI/UE

EasyUI tree 相关

2016-04-18 14:29 399 查看
做个记录

@RequestMapping(value = "/roleEditView.action")
public ModelAndView roleEditView(HttpServletRequest request,@RequestParam("roleId") String  roleId	) {
TTspBRolePO rolebo = roleService.queryRoleByRoleId(roleId);
RoleVO roleVo = new RoleVO();
try {
BeanUtils.copyProperties(roleVo, rolebo);   // po转换成vo
List<TTspBMenuPO> roleMenus = menuService.queryMenusByRoleId(roleId); .// 查询菜单的集合
List<String> ids = new ArrayList<String>();
for(TTspBMenuPO menu :roleMenus){
ids.add(menu.getMenuId());
}
roleVo.setSelectedMenus(CommaStringUtils.parseList2CommaString(ids, CommaStringUtils.COMMA)); // 将之编程字符串,用,隔开
} catch (Exception e) {
log.error("根据用户获取对应角色列表失败,错误原因为", e);
throw new CommonException("查询用户角色列表失败", e);
}

ModelAndView mav =new ModelAndView("/role/roleEdit");
mav.addObject("role", roleVo);
return mav;
}


页面中的js

<script type="text/javascript">
function beforeSubmit() {
var nodes = $('#tt').tree('getChecked', [ 'checked', 'indeterminate' ]);
var selectedIdArray = new Array();
$.each(nodes, function(index, item) {
selectedIdArray.push(item.id);
});
$('#selectedMenus').val(selectedIdArray.join(','));  // 转成字符串传到后台去,再解析
return true;
}

$(function() {

var onLoadSuccessDEfault = $.fn.tree.defaults.onLoadSuccess;
$('#tt').tree({
onLoadSuccess : function(node, data) {
var menuids = $('#selectedMenus').val();
var menuArray = commaStr2StrArray(menuids); // 转成数组
$.each(menuArray, function(index, item) {
var node = $('#tt').tree('find', item);
if (node.children.length == 0) {
$('#tt').tree('check', node.target);
}
;
});
return onLoadSuccessDEfault.call(node, data);
}
});
});
</pre><pre code_snippet_id="1651484" snippet_file_name="blog_20160418_9_7566908" name="code" class="html">
</pre><pre code_snippet_id="1651484" snippet_file_name="blog_20160418_6_5724528" name="code" class="html">/**
 * 逗号分隔字符串转换为数组对象
 * @param str
 */
function commaStr2StrArray(commaStr){
<span style="white-space:pre">	</span>if (commaStr != '' && commaStr != undefined){
<span style="white-space:pre">		</span>return commaStr.split(",")
<span style="white-space:pre">	</span>}else{
<span style="white-space:pre">		</span>return new Array();
<span style="white-space:pre">	</span>}
} 
</script>

<td><label>菜单权限</label></td>

<td colspan="3">
<ul id="tt"
data-options="url:'${base}/menu/allMenuTree.action',animate:true,checkbox:true"></ul>
</td>
</pre><pre code_snippet_id="1651484" snippet_file_name="blog_20160418_9_7566908" name="code" class="html">
<input type="hidden" id="selectedMenus" name="selectedMenus"
<span style="white-space:pre">					</span>value="${role.selectedMenus}" /> <input type="hidden" id="roleId"
<span style="white-space:pre">					</span>name="roleId" value="${role.roleId}" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: