【问题标题】:Is there a way to make things visible and invisible in HTML as per requirements?有没有办法根据要求使事物在 HTML 中可见和不可见?
【发布时间】:2013-10-08 01:20:01
【问题描述】:

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

我个人觉得这种做法是多余的。我们应该为管理员视图制作一个单独的页面,然后应该做出安排,如果用户被确认为管理员,他可以看到所有内容,但如果他被确认为用户,额外的按钮将自动隐藏。在 HTML 页面中是否有这样做的方法?除了 HTML,我们还使用了一些 CSS 和 Javascript(Alert 等)

【问题讨论】:

  • HTML?不是 JSP,就像大多数 Java EE 应用程序一样?在这种情况下,普通的 JSTL 或类似 Spring Security 的标签会提供开箱即用的“当用户具有此角色时执行此操作”的东西?甚至不使用动态包含/基本 JSP 模板?还是更有特色的解决方案,如 Tiles、SiteMesh 等?你在错误的时间问这个问题。
  • 您想在后端(服务器端)控制它。例如,对于 PHP,使用 includes 语句添加按钮,基于对用户登录信息的条件评估。
  • @DaveNewton,实际上页面是JSP,但标签都是HTML。
  • @SableFoste,好吧,在这种情况下,我想知道如何在 J2EE 中做到这一点。
  • 页面是JSP,标签都是HTML?那为什么要使用JSP呢?你没有使用脚本,我希望???另请注意,如果这一切都在客户端完成,那么他们仍然能够访问 JS 和 HTML。请注意,您需要在服务器端确认授权无论如何,但是,为什么要像这样泄露信息?

标签: javascript html jakarta-ee


【解决方案1】:

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

  1. 使用模板
  2. 使用 HTML 的隐藏部分,您可以根据需要使其可见
  3. 使用动态加载的 HTML(根据需要通过 javascript 从公共来源加载)
  4. 使用弹出式 HTML 窗口(一般不推荐)
  5. 使用服务器端包含在许多页面中包含一个公共部分

有许多不同的选择不涉及将相同的 HTML 复制到多个不同的页面,选择哪一个取决于特定的环境,在某些情况下,还取决于您使用的工具以及它们的功能使什么变得简单。

【讨论】:

  • 请您在每种情况下提供一些示例。
  • 我对 HTML 了解不多。你能至少给我一些链接吗?
  • @Mistu4u - 您可能希望有一个通用页面设计,根据 cookie 是否确认用户以管理员身份登录,使用条件服务器端包含。我建议您在这里阅读第一个答案以及该答案中的相关参考,以帮助您朝着正确的方向开始:stackoverflow.com/questions/14580120/…
【解决方案2】:

您可以检查用户是否为管理员。然后,您可以使用 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";
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 2014-03-20
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 2013-12-12
    相关资源
    最近更新 更多