从JSP检索数据

时间:2013-09-21 20:40:30

标签: java jsp servlets

当我点击jspA中的链接时,它将重定向到带有查询字符串 src 的jspB。 src 的消息将在jspB中显示没有问题。但是,为什么我试图点击提交,我无法在我的servlet页面中检索 src 的值。有没有办法在servlet中检索 src 的值?感谢。

在我的jspB页面中:

<img src="<%= request.getParameter("src") %>" />
<table>     
    <form name="frmTest" action="test" method="post">
        <input type="submit" value="sub" name="sub" />
    </form>
</table>

在我的Servlet测试中:

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
        throws ServletException, IOException{

    String imgUrl = req.getParameter("src");

我正在从 imrUrl 中检索空值。

2 个答案:

答案 0 :(得分:2)

当您提交html form时,只会将inputselect元素作为参数发送。您没有将name属性设置为src的任何属性。

您可以使用隐藏的input

<form name="frmTest" action="test" method="post">
    <input type="submit" value="sub" name="sub" />
    <input type="hidden" name="src" value="<%= request.getParameter("src") %>" />
</form>

It is generally discouraged to use scriptlets.阅读JSTL和EL并使用这些技术。

答案 1 :(得分:0)

我假设你的意思是从jspB提交?如果是这样,您需要将src值存储在表单中的隐藏字段中,以便在提交时调用servlet时可用。类似于以下内容

<form name="frmTest" action="test" method="post">
    <input type="hidden" value="<%= request.getParameter("src") %>" name="src" />
    <input type="submit" value="sub" name="sub" />
</form>

PS你应该避免使用scriptlet(即&lt;%和%&gt;之间的代码)而是使用jsp表达式语言