隐藏列表项基于布尔值true false jsp
Hide list item based on boolean true false jsp
我有一个幻灯片菜单在我的jsp页面和登录后,我检查用户是否被允许查看元素或不从存储在数据库中的参数。我需要根据用户是否被允许查看来隐藏项目。
我jsp<ul style = "display:none">
<li><a href="servletName">MyfirstSubmenu</a></li>
<li><a href="servletName1">MyfirstSubmenu1</a></li>
</ul>
我的dao:提取:
public boolean userallowed(username, itemid){
..........................
return true;
}
my servlet extract:
if(userallowed(username, itemid)){
session.setAttribute("userallowed", true);
request.getRequestDispatcher("/mypage.jsp").forward(request, response);
}else{
request.getRequestDispatcher("/mypage.jsp").forward(request, response);
session.setAttribute("userallowed", false);
}
我如何写一个javascript函数能够隐藏基于用户权限的元素?
您可以简单地这样做:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:if test="${true == sessionScope.userallowed}">
<ul>
<li><a href="servletName">MyfirstSubmenu</a></li>
<li><a href="servletName1">MyfirstSubmenu1</a></li>
</ul>
</c:if>
与其用JavaScript隐藏元素,不如将逻辑放在JSP文件中,这样会更安全:
<% if ((boolean) session.getAttribute("userallowed")) { %>
<ul>
<li><a href="servletName">MyfirstSubmenu</a></li>
<li><a href="servletName1">MyfirstSubmenu1</a></li>
</ul>
<% } %>
请注意,如果不允许客户端看到这些受保护的菜单项,它们是如何不发送给客户端的。
同样,您的servlet代码可以简化一点:
session.setAttribute("userallowed", userallowed(username, itemid));
request.getRequestDispatcher("/mypage.jsp").forward(request, response);
相关文章:
- JavaScript-切换“;全部检查”;复选框true/false
- true==false以某种方式计算为true
- Javascript似乎在说true ==false
- JavaScript onkeydown, return true,false
- 从异步函数返回true/false以用于同步if()
- 函数返回undefined而不是true/false
- 为什么true/true是1,true/false是无穷大,false/true是0,false/false是NaN
- 检查对象数组是否包含布尔值true/false
- 函数:根据字符串中是否存在子字符串返回 True/False
- 如何将 ng-show 与控制器中返回 true/false 的函数一起使用
- 在input.checked=true/false _without_ jQuery上触发一个事件
- jQuery javascript未正确返回true/false
- 如何从嵌套的jquery回调函数中返回true/false
- 如何在骨干模型属性中设置布尔值true/false
- 如何使用angular或javascript在基于true/false返回的html中显示值
- 基于true/false变量显示/隐藏进度条
- Node.js在返回true/false时停止函数
- 是否可以将true/false值传递给ajax函数
- 根据Webix中的复选框值编辑true/false
- Meteor:设置车把变量true/false