2011-03-21 40 views
0

$ {param.type}是我从一个jsp发送到包含的jsp的变量。如何使用Struts中的字符串测试jsp param参数?

我想,他们的

<s:if test="${param.type} == 'message_error'"> 

<s:if test="'message_error'.equas(${param.type})"> 

非工作。我如何用struts检查它?

编辑1:

我送参数那样:

<jsp:include page="/file.jsp"> 
    <jsp:param name="type" value="message_error"/> 
</jsp:include> 

我会做撑杆file.jsp

编辑2控制:

这里是回答的一个步骤。 http://struts.apache.org/2.x/docs/why-doesnt-the-if-tag-evaluate-params-properly.html参数位于Struts2的Map中。然而我的type帕拉姆没有在请求我认为struts2不能看到它后首先请求参数设置。

+0

道道告诉你,你在包括JSP发送帕拉姆的代码? – 2011-03-21 16:27:03

+0

不太熟悉struts,但你可以通过'<%= request.getParameter(“type”)%>'来检查值是否在请求中。 – gmedina 2011-03-21 22:50:26

回答

0

也可以尝试这样的事情

<s:if test='%{(param.type) == "message_error"}'> 
+0

@Kmchi:通过标签或任何其他方式无法在呈现的页面内访问提供给包含页面的任何附加参数,因为不会创建值栈。但是,您可以通过HttpServletRequest对象或通过scriptlet从JSP页面访问它们。因此,您必须使用普通的HTTPServlet请求来访问这些参数,如<%= request.getParameter(“type”)%> 。希望对你有帮助 – 2011-03-22 02:54:34

相关问题