Javascript 是否有一种方法可以根据需要在HTML中显示和不显示内容?

Javascript 是否有一种方法可以根据需要在HTML中显示和不显示内容?,javascript,html,jakarta-ee,Javascript,Html,Jakarta Ee,我们最近在班上做了一个J2EE项目,需要58个不同的网页。但在我看来,其中很多都是多余的。怎样让我给你举个简单的例子。在管理员和普通用户都登录的登录页面之后,一个页面被重定向到一个普通页面,其中有几个按钮。有些按钮对于用户和管理员来说是常见的,但是管理员可以在同一页面中看到一些额外的按钮。所以我们所做的-我们首先制作了页面的公共部分,然后制作了另一个页面副本,粘贴了公共页面的代码,然后为管理员权限添加了一些额外的按钮。因此,在确认一个用户后,我们将他重定向到公共页面,再次,如果该用户被确认为管理

我们最近在班上做了一个J2EE项目,需要58个不同的网页。但在我看来,其中很多都是多余的。怎样让我给你举个简单的例子。在管理员和普通用户都登录的登录页面之后,一个页面被重定向到一个普通页面,其中有几个按钮。有些按钮对于用户和管理员来说是常见的,但是管理员可以在同一页面中看到一些额外的按钮。所以我们所做的-我们首先制作了页面的公共部分,然后制作了另一个页面副本,粘贴了公共页面的代码,然后为管理员权限添加了一些额外的按钮。因此,在确认一个用户后,我们将他重定向到公共页面,再次,如果该用户被确认为管理员,我们将他重定向到附加按钮添加页面


我个人认为这种方法是多余的。我们应该为管理员视图创建一个页面,然后进行安排,这样如果用户被确认为管理员,他就可以看到所有内容,但是如果他被确认为用户,额外的按钮将自动隐藏。在HTML页面中有这样做的方法吗?除了HTML,我们还使用了一些CSS和Javascript警报等。

对于常见的HTML片段,您可以:

使用模板 使用HTML的隐藏部分,使其在需要时可见 使用通过javascript从公共源根据需要动态加载的HTML 通常不建议使用弹出式HTML窗口 使用服务器端包含在多个页面中包含公共部分
有许多不同的选择不涉及在许多不同的页面上复制相同的HTML,选择哪一个取决于特定的环境,在某些情况下,取决于您使用的工具以及它们的功能。您可以检查用户是否是管理员。然后可以使用Javascript将按钮上的显示值更改为隐藏,用户应该看不到。 一个例子

<input type="button" value="3" name="3" id="button_3" display="inline">

if(!admin) /* However you wanna chek if he is admin or not */
{
document.getElementById("button_3").display = "none";
}

HTML?不是像大多数JavaEE应用那样的JSP?在这种情况下,正常的JSTL或类似Spring安全性的标记会提供这样的功能,当用户拥有这个角色时,您会这样做吗?甚至不使用动态包含/基本JSP模板?还是更具特色的解决方案,如瓷砖、SiteMesh等?您在错误的时间提出此问题。您希望在后端服务器端控制此问题。例如,在PHP中,根据对用户登录信息的条件评估,使用includes语句添加按钮。@DaveNewton,实际上页面是JSP,但标记都是HTML。@SableFoste,在这种情况下,我想知道如何在J2EE中做到这一点。页面是JSP,但标记都是HTML?那么为什么要使用JSP呢?我希望你没有使用Scriptlet???还要注意的是,如果这些都是在客户端完成的,那么他们仍然能够访问JS和HTML。请注意,无论如何,您都需要确认服务器端的授权,但是,为什么要泄漏这样的信息?请您在每种情况下提供一些示例。我对HTML了解不多。你能至少给我提供一些链接吗?@Mistu4u-你可能想有一个通用的页面设计,根据cookie是否确认用户以管理员身份登录,使用有条件的服务器端包含。我建议您阅读此处的第一个答案以及该答案中的相关参考资料,以便从正确的方向开始: