一个关于request传值的问题。
在jsp页面,有
String search = (String) request.getAttribute("search");
System.out.println("search :"+search );
在<Form>中,有
<form name="queryConditionform" method="post" action="/rsas/FeedbackAction.do">
<input id="search" name="search" value="<%=search%>" type="hidden"/>
</form>
在action中,有
String search = request.getParameter("search");
System.out.println("search-action :"+search );
if(search ==“yes”){
System.out.println(“你好!”);
}
在action的最后,有
request.setAttribute("search", "yes");
return mapping.findForward("feedback");
基本的需求,当第一次登陆页面的时候,提交了form后,不输出“你好”,然后再提交的时候,才会输出“你好”,
但是问题是,输出的结果是
第一次登陆:
search :null
点击submit后:
search-action :null
search :yes
再点击submit:
search-action :null
search :yes
发现<input id="search" name="search" value="<%=search%>" type="hidden"/>
的value的值老是null,这是为什么的?输出的search 已经是yes了喔。
求高手打救,小弟感激不尽。
------解决方案--------------------这个search应该没值,不是传值的问题。
------解决方案--------------------
先访问jsp,那么<input id="search" name="search" value="<%=search%>" type="hidden"/>里面的search怎么能获取到?而且看上面的是在action才保存的。
<%
String search = (String) request.getAttribute("search");
System.out.println("search :"+search );
%>
<input id="search" name="search" value="<%=search%>" type="hidden"/>
这样获取啊,这个时候已经可以输出yes了。这样不行吗??