在jsp中调用action并携带一个参数,在另一个界面使用 s:if 标签没有办法获得这个参数。
1.这是在调用action时携带一个参数:
2.在另一个jsp中判断select的值:
3.使用s:debug 标签查看到parameters的值中没有select这个参数,界面判断出来也是select是为null的
求问是什么原因
在jsp中调用action并携带一个参数,在另一个界面使用 s:if 标签没有办法获得这个参数。
1.这是在调用action时携带一个参数:
2.在另一个jsp中判断select的值:
3.使用s:debug 标签查看到parameters的值中没有select这个参数,界面判断出来也是select是为null的
求问是什么原因
请问你后台action是怎么接收这个select参数的?
你在第二个jsp里使用的 #parameter只能用来获取请求中的参数。 如果你在action中有select这个全局变量,并set了值,而且提供了getter方法,那么在jsp中直接
获取不用加前缀。 如果在action中是用 request.setAttribute方法设置的参数,那么在jsp中访问时需要加#request前缀。
parameter:获取请求参数的映射
request:获取请求作用域属性的映射
session:获取会话作用域属性的映射
application:应用程序作用域属性的映射
attr:按照页面,请求,会话,应用程序作用域的顺序,返回第一个出现的属性
ValueStack:返回当前请求的应用程序特定领域的所有数据