【发布时间】:2012-07-16 05:30:01
【问题描述】:
如何将一个jsp页面的<s:property/>中的值重定向到另一个jsp页面的<input type="text"/>..?
我有两个 jsp 页面:一个.jsp 和两个.jsp
一个.jsp:
<%@taglib prefix="s" uri="/struts-tags" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Jsp - one</title>
</head>
<body>
<h1>One JSP</h1>
<s:iterator value="u" begin="0" end="0">
<s:property value="uid" />
</s:iterator>
<a href="two.jsp">Go to two.jsp</a>
</body>
</html>
两个.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Jsp - two</title>
</head>
<body>
<h1>Two JSP</h1>
<input type="text" id="two" name="two" value="<%=request.getParameter("uid")%>" /> //in this textfield i want the value of <s:property/> of one.jsp. But i am getting "null" in it.
<a href="one.jsp">Go to one.jsp</a>
</body>
</html>
请注意:one.jsp 正在使用 struts2 taglib,<s:property/> 的值是从一个返回一些列表 u 的操作类中获取的,列表 u 的类型是 users,它具有唯一的 @ 987654329@。我已经正确地完成了数据库中类和表的映射。而 two.jsp 没有使用任何 taglib。 two.jsp 与数据库或taglib 无关。它只有一个来自 one.jsp 的链接。
在 two.jsp 的 <input type="text"> 中,我想要 one.jsp 的 <s:property/> 的值。但我得到了"null"。
请提供一些方法来获取它。
【问题讨论】:
-
您在第一页有一个 uid 列表,想把它们都放在第二页的输入中吗?我想不是。看起来您想要选择其中一个值并将其传递给页面。所以使用 而不是
并像往常一样传递选定的值。将表单添加到您的页面并使用提交而不是链接或使用一些 javascript 并将选定的值添加到 href 或任何内容 -
感谢您的评论并指出我的需要。你是对的,我只需要列表中的第一个值。所以我在
标签中使用 begin="0" end ="0" 进行了编辑。正如你所说的使用 那么如何从返回列表'u'的动作类中获取值..?有没有办法对 做同样的事情然后请分享。 -
在
one.jsp上,您可以将您的值和a标记放到一个表单中,然后您应该在第二页访问您的值。