【问题标题】:JSP meta title property doesn't workJSP 元标题属性不起作用
【发布时间】:2013-12-30 10:33:22
【问题描述】:

在我的 header.jsp 中,我有以下代码:

<head>
    <meta name="description" content="<%= request.getParameter("description") %>" />
    <meta property="og:description" content="<%= request.getParameter("description") %>" />
    <meta property="og:title" content="<%= request.getParameter("title") %>" />
    <meta property="og:type" content="website" />
    <title>Title Website</title>
</head>

<body>
<div id="nav">navigation menu</div>
</body>

在我的页面“Reservation.jsp”上,我有以下代码:

<jsp:include page="includes/header.jsp">
    <jsp:param name="reservation" value="current" />
    <jsp:param name="description" value="Please reserve your place" />
    <jsp:param name="title" value="Please reserve your place" />
</jsp:include>

<div id="content">
content
</div>

<jsp:include page="includes/footer.jsp">
</jsp:include>

当我在浏览器中打开 reservation.jsp 页面时,选项卡中的标题仍为“标题网站”而不是“请保留您的位置”。

这到底是怎么回事?

【问题讨论】:

    标签: jsp title meta


    【解决方案1】:

    你已经在你的 header.jsp 中声明了

    <title>Title Website</title>
    

    所以,标题显示标题网站

    根据文档,当调用包含或转发元素时,会将原始请求对象提供给目标页面。如果您希望向该页面提供其他数据,可以使用 jsp:param 元素将参数附加到请求对象:

    <jsp:include page="..." >
        <jsp:param name="title" value="Please reserve your place"/>
    </jsp:include>
    

    您为页面中的include 元素添加了参数title。就这样。与名为titleHTML 标记&lt;title&gt; 的参数没有关系。他们是完全不同的,他们有自己的目的。为了在 header.jsp 的标题中设置参数值,您需要将其更改为

    <title><%= request.getParameter("title") %></title>
    

    因此,标题请求参数的值将在页面创建期间在标题标签中设置

    【讨论】:

      【解决方案2】:

      找到了,是的

      <title><%= request.getParameter("title") %></title>
      

      而不是

      <title>Title Website</title>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多