EasyUI动态展示用户信息
业务需求:用户登录后展示用户名、用户对应的角色。EasyUI只不过是一个前端的框架,封装了一些组件和样式,你可以用jsp直接调后台获取到用户信息展示,但我这里想用html页面,用目前流行的说法:前后端分离。效果跟你现在看到的页面右上角差不多,当然功能不同,点击名字不会跳页,当鼠标放在名字可以展示当前用户的角色:
实现很简单,html通过easyUI的布局组件region:'north'指定页面顶部展示:
<div class="wu-header" data-options="region:'north',border:false,split:true">
<div class="wu-header-left">
<h1>我的台管理系统</h1>
</div>
<div class="wu-header-right">
<p><strong id="userName">admin</strong>,欢迎您!|<a href="javascript:void(0)" onclick="logout()">退出</a></p>
</div>
</div>
在页面加载时调用后台getLoginInfo接口获取用户信息的js:
// 获取用户信息并展示
$.ajax({
type: 'post',
url: 'getLoginInfo',
dataType: 'json',
async: true,
success: function (data) {
if (data) {
if (data.user) {
roleValue = data.user.roleValue;
var roleName;
for (i = 0; i < roleStatus.length; i++) {
if (roleStatus[i].id == roleValue) {
roleName = roleStatus[i].value;
break;
}
}
$('#userName').html(data.user.userName); // 展示角色
$('#userName').tooltip({
position: 'right',
content: '<span style="color:#fff">您的角色为:' + roleName + '</span>',
onShow: function () {
$(this).tooltip('tip').css({
backgroundColor: '#666',
borderColor: '#666'
});
}
}); createMenu(roleValue);
} else {
window.location.href = "index.html";
}
} }
});
上面标黄的roleValue获取角色的key值,用来在菜单加载时使用。而roleStatus就是一个下拉框选项值的数组,通过roleValue的id值去找到对应的value值。
后台Controller接口:
/**
* 获取登陆信息
*
* @return
*/
@ResponseBody
@RequestMapping(value = "/getLoginInfo", method = RequestMethod.POST)
public Object getLoginInfo() {
User user = null;
Map<String, Object> resultMap = new HashMap<>();
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest httpServletRequest = attributes.getRequest();
if (httpServletRequest != null && httpServletRequest.getSession(true) != null) {
user = (User) httpServletRequest.getSession().getAttribute("user");
} if (user == null) {
resultMap.put("errorMsg", "请先登录.");
} else {
resultMap.put("user", user);
}
return resultMap; }
同理,点击退出时调用登出接口,跳往登陆页面。
EasyUI动态展示用户信息的更多相关文章
- 使用calendar日历插件实现动态展示会议信息
效果图如下,标红色为有会议安排,并跳转详细会议信息页面. html页面 <%@ page contentType="text/html;charset=UTF-8"%> ...
- EasyUI动态生成菜单
业务需求:不同角色有不同的权限,我们根据角色加载页面时展示不同的菜单.在easyUI中,菜单一般采用手风琴accordion组件进行展示,一级菜单下可以加载二级菜单,效果如下: 普通用户看到的菜: 管 ...
- 微信小程序登录流程及解析用户openid session_key,获取用户信息
为优化用户体验,使用 wx.getUserInfo 接口直接弹出授权框的开发方式将逐步不再支持.从2018年4月30日开始,小程序与小游戏的体验版.开发版调用 wx.getUserInfo 接口,将无 ...
- Java微信公众平台开发(十)--微信用户信息的获取
前面的文章有讲到微信的一系列开发文章,包括token获取.菜单创建等,在这一篇将讲述在微信公众平台开发中如何获取微信用户的信息,在上一篇我们有说道微信用户和微信公众账号之间的联系可以通过Openid关 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(19)-用户信息的修改和浏览
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(19)-用户信息的修改和浏览 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 ...
- 利用Filter和拦截器,将用户信息动态传入Request方法
前言: 在开发当中,经常会验证用户登录状态和获取用户信息.如果每次都手动调用用户信息查询接口,会非常的繁琐,而且代码冗余.为了提高开发效率,因此就有了今天这篇文章. 思路: 用户请求我们的方法会携带一 ...
- ASP.NET SingalR + MongoDB 实现简单聊天室(二):实现用户信息、聊天室初始化,聊天信息展示完善
第一篇已经介绍了一大半了,下面就是详细业务了,其实业务部分要注意的地方有几个,剩下的就是js跟html互动处理. 首先在强调一下,页面上不可缺少的js:jquery,singalR.js,hubs . ...
- ABP框架展示异常信息
接触ABP框架有一段时间了,也遇到了一些问题,看了官网文档,但是或许是看的不够细致的原因,实际开发中还是遇到了一些问题,耗费了时间去处理,回头一看,原来文档中早已提及. 开发环境:ABP+MPA模式+ ...
- 在Winform系统界面中对进展阶段的动态展示和处理
在我们做客户关系管理系统的Winform界面的时候,需要对进展阶段这个属性进行一个方便的动态切换和标记处理,如我们根据不同的进展阶段显示不同的相关信息,也可以随时保存当前的阶段信息.其实也是一个比较常 ...
随机推荐
- Castle.Windsor依赖注入的高级应用与生存周期
1. 使用代码方式进行组件注册[依赖服务类] using System; using System.Collections.Generic; using System.Linq; using Syst ...
- U盘损坏?
- 前端学习笔记--CSS布局--float定位
1.float属性 box1向右移动,box2顶替了box1的位置,box3顶替了box2的位置. 2.clear属性 案例: 一列三行布局: <!DOCTYPE html> <ht ...
- CSP模拟赛 number (二分+数位DP)
题面 给定整数m,km,km,k,求出最小和最大的正整数 nnn 使得 n+1,n+2,-,2nn+1,n+2,-,2nn+1,n+2,-,2n 中恰好有 mmm 个数 在二进制下恰好有 kkk 个 ...
- 45、[源码]-Spring容器创建-执行BeanFactoryPostProcessor
45.[源码]-Spring容器创建-执行BeanFactoryPostProcessor 5.invokeBeanFactoryPostProcessors(beanFactory);执行BeanF ...
- Hive中的数据库、表、数据与HDFS的对应关系
1.hive数据库 我们在hive终端,查看数据库信息,可以看出hive有一个默认的数据库default,而且我们还知道hive数据库对应的是hdfs上面的一个目录,那么默认的数据库default到底 ...
- java获取远程服务器应用程序服务状态
package lct.conference.test; import java.io.BufferedReader; import java.io.IOException; import java. ...
- 二十一.构建memcached服务、LNMP+memcached、PHP的本地Session信息、PHP实现session共享
proxy client web1 web2 1.构建memcached服务 ]# yum -y install memcached ]# cat /etc/sysconfig/memcached ...
- zabbix的日志监控
前提条件是该日志文件对于启动zabbix agent进程的用户开启了可读权限,而且该日志的路径对该用户开方x权限,让能取到这个日志文件 第一个参数可以不用引号,前提是zabbix用户可以进入文件路径, ...
- Codeforces Round #528 (Div. 2)题解
Codeforces Round #528 (Div. 2)题解 A. Right-Left Cipher 很明显这道题按题意逆序解码即可 Code: # include <bits/stdc+ ...