【问题标题】:Access and print HTTP request query string parameters via EL in JSP page在 JSP 页面中通过 EL 访问和打印 HTTP 请求查询字符串参数
【发布时间】:2011-02-10 21:00:31
【问题描述】:

我需要将请求参数从一个 JSP 传递到另一个 JSP 页面,如下所示:

<a href="cv.jsp?type=alaacv">alaa</a>

但是,当我尝试如下访问它时,它不会打印任何内容。

<c:set var="selectedCV" value="${type}" scope="request" />
<c:out value="${selectedCV}" />

这是怎么引起的,我该如何解决?

【问题讨论】:

    标签: jsp el http-request-parameters


    【解决方案1】:

    您需要通过${param} 访问它,这是一个implicit EL object 引用请求参数映射(实际上是一个Map&lt;String, String&gt;;如果您需要Map&lt;String, String[]&gt; 用于多值参数,请使用${paramValues}而是)。

    <c:set var="selectedCV" value="${param.type}" />
    <c:out value="${selectedCV}" />
    

    ${param.type} 基本上解析为request.getParameter("type")

    不需要&lt;c:set&gt;,你也可以像下面这样操作:

    <c:out value="${param.type}" />
    

    另见:

    【讨论】:

    • 它也不起作用??你认为问题出在 吗?
    • 那你有错字或者你没有运行你认为你正在运行的代码。
    • 当我这样制作时它可以工作 但当我这样制作时它不起作用 c:out value="${selectedCV }" /> ???
    • 那么你的&lt;c:set&gt; 错了。它需要完全按照我的答案定义,之前 相同页面中的&lt;c:out&gt;
    【解决方案2】:

    您需要将响应对象中的给定参数传递给第二个.jsp。如何做到这一点取决于您使用的 servlet/框架(除非框架应该以某种方式自动完成)。

    【讨论】:

    • 我没有使用servlet,我知道它更容易,但现在我需要将简单的请求表单jsp发送到另一个jsp页面并通过锚发送参数!
    • @Alaa - 实际上,您正在在后台使用 servlet 框架。 servlet 框架支持 JSP。但是,我认为这个答案并不正确。
    • 我知道当 jsp:engine 解析 jsp 页面时,它会为每个页面创建 servlet
    猜你喜欢
    • 2014-03-30
    • 2013-08-04
    • 1970-01-01
    • 1970-01-01
    • 2017-02-05
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多