一个关于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>
上面代码的执行顺序是怎样的?貌似没明白过来
先访问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了。这样不行吗??
.jsp:
<%
String search = (String) request.getAttribute("search");
System.out.println("search :"+search );
%>
<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(“你好!”);
}
request.setAttribute("search", "yes");
return mapping.findForward("feedback");
是jsp的form提交,执行了action,action获得form提交的值,来判断是否执行输出“你好”的语句。