jsp中
${param.bookzid}可以取到值
为什么
<s:if test="%{param.bookzid==1}">
和<s:if test="%{param.bookzid!=1}">
都不能满足条件呢?

解决方案 »

  1.   

    param.bookzid  这个可能为了空
      

  2.   


    ${param.bookzid}可以取到值的
      

  3.   


    不是${}取值吗??<s:if></s:if>那你struts的标签库导了没?
      

  4.   

    是${}取值呀,
    <%@ taglib prefix="s" uri="/struts-tags" %>
    有这句 的
      

  5.   

    解决了
    用这个就可以,<c:if test="${param.bookzid==1}">
    谁来说说为什么?
      

  6.   

    应该是这样的吧:
    <s:if test="%{parameters.bookzid==1}">
    但是我一般都是用的${param.bookzid==1}取值  
    因为用s标签这种我总是会出一点小问题
      

  7.   

    s:if 标签判断这样写<s:if test="#parameters.bookzid !=1 ">#加上名字的
      

  8.   

    <s:if test="%{param.bookzid!=1}">
    应该是<s:if test="${param.bookzid!=1}">把
      

  9.   

    <c:if test="${param.bookzid==1}">,这是jstl标签,用EL表达式取值${param.bookzid}"
    <s:if test="%{param.bookzid!=1}">,这是struts2标签,用ongl表达式取值。
    EL表达式${param.bookzid},这样无论param在session、request等对象里都可以取到。
    ongl表达式%{param.bookzid},只有param在struts2值栈里才能取到。