在jsp页面中使用简单的标签?

发布于 2024-11-03 22:42:42 字数 308 浏览 1 评论 0原文

在我的 a.jsp 文件中:

 <html>
 <body>
 <%
           out.print("<my:login error=\"${Error}\"/>"); // It doesn't work :(

 %>
           <my:login error="${Error}"/> // It only works if I put it here
 </body>
 </html>

有人能告诉我哪里错了吗?谢谢。

In my a.jsp file:

 <html>
 <body>
 <%
           out.print("<my:login error=\"${Error}\"/>"); // It doesn't work :(

 %>
           <my:login error="${Error}"/> // It only works if I put it here
 </body>
 </html>

Can anybody tell me where I were wrong? Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

跨年 2024-11-10 22:42:42

在第一种方法中,您将标签打印为纯文本,因此它直接成为 HTML 的一部分。事实上,它不会工作,因为网络浏览器不解析 JSP 标签。无论如何,也不鼓励使用 scriptlet。

二是正确做法。如果您唯一的功能要求是有条件地内联标记,则可以将其嵌套在 JSTL

<c:if test="${not empty Error}">
    <my:login error="${Error}"/>
</c:if>

In the first approach you're printing the tag as plain text and thus it becomes part of HTML directly. Truly it won't work since the webbrowser does not parse JSP tags. Using scriptlets is also discouraged anyway.

The second is the correct approach. If your sole functional requirement is to inline the tag conditionally, then nest it inside a JSTL <c:if> instead

<c:if test="${not empty Error}">
    <my:login error="${Error}"/>
</c:if>

or something.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文