当前位置: 代码迷 >> Java Web开发 >> struts2如何把从一个页面查询到的数据赋值给另一个页面的<s:textarea 文本框>
  详细解决方案

struts2如何把从一个页面查询到的数据赋值给另一个页面的<s:textarea 文本框>

热度:10364   发布时间:2013-02-25 21:13:27.0
struts2怎么把从一个页面查询到的数据赋值给另一个页面的<s:textarea 文本框>急!!!!
1.jsp
<s:textarea name="sendSMS.msgcontent" id="content" value="<%=request.getParameter("msgcontent")%>">
2.jsp
<a href="loadAddSendSMS.action?messageContent=messageContent">提交</a>




------解决方案--------------------------------------------------------
Java code
1.jsp<s:textarea name="sendSMS.msgcontent" id="content" value="<%=request.getParameter("messageContent")%>">2.jsp<a href="loadAddSendSMS.action?messageContent=“要传递的值”">提交</a>
------解决方案--------------------------------------------------------
按照你的要求有两种实现方式。
1、就是这样直接传,不过你的名字貌似有问题,就像1L所说的这样。也可以像下面如此:
1.jsp
<s:textarea name="sendSMS.msgcontent" id="content" value="<%=request.getParameter("msgcontent")%>">
2.jsp
<a href="loadAddSendSMS.action?msgcontent=messageContent">提交</a>
不过你既然把name命名成sendSMS.msgcontent这样的,再用这样直接传貌似失去效果了。

2、Struts有自动填充对象,你在Action里把值传过去的值赋到对象属性中,然后Struts会自动传过来的。

看着LZ的代码,你在Action里传了sendSMS,而页面没有接受到,然后你再打算想直接传一个字段?这里的错误可能是你直接放在request里了,你用Session试试,页面应该能接收到的。

------解决方案--------------------------------------------------------
探讨
按照你的要求有两种实现方式。
1、就是这样直接传,不过你的名字貌似有问题,就像1L所说的这样。也可以像下面如此:
1.jsp
<s:textarea name="sendSMS.msgcontent" id="content" value="<%=request.getParameter("msgcontent")%>">
2.jsp
<a href="loadAddSendSMS.ac……

------解决方案--------------------------------------------------------
LZ 检查你的代码 肯定出问题了
------解决方案--------------------------------------------------------
最简单的是在后台用request保存你的参数值.
[code=java]
String message = request.getParameter("msgcontent");
request.setAttribute("message",message);
[/code]
在JSP页面里取值
[code=java]
<%=(String)request.getAttribute(message)%>
[/code]
你2.jsp到1.jsp是怎么跳转的? 如果是客户端跳转的话 超过了request作用域,参数值自然获取不到。
request作用域为一次服务器端跳转。

------解决方案--------------------------------------------------------
不清楚你是怎么跳转的,查询的结果怎么都要放在request里吧,取出来不可能用getParameter啊,得用getAttrabute
------解决方案--------------------------------------------------------
看下控制台有没有报错。

有错的话,把错粘出来在网上搜解决方法。
------解决方案--------------------------------------------------------
1、可以直接传但是你写法有错误
你不妨学学ognl表达式,和struts配合很好,强大而简单
2、你用action来传
你用的是struts2的话,在action类里定义一个变量来接收你要传的值,比如string msgcontent;
然后设定set、get方法,这样action会自动填充他的,不用你来管理了,比较方便

我推荐你用第二种方法
------解决方案--------------------------------------------------------
后台保存跳转

后者url传递

最笨放session
------解决方案--------------------------------------------------------
1.jsp
<s:textarea name="sendSMS.msgcontent" id="content" value="%{#request.parameters.msgcontent[0]}">
2.jsp
<a href="loadAddSendSMS.action?msgcontent=messageContent">提交</a>

下面这个你不会报错吗?
<s:textarea name="sendSMS.msgcontent" id="content" value="<%=request.getParameter("msgcontent")%>">
------解决方案--------------------------------------------------------
探讨
引用:
看下控制台有没有报错。

有错的话,把错粘出来在网上搜解决方法。

严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /system/sendSMS/sendSMS_new.jsp(45,67) Attribute value requ……
  相关解决方案