struts2 <s:if> 标签的疑问
我再Action里面用
ActionContext.getSession().put("loginUserType", user.getType());字段type 是 user 对象的一个String 属性
而后我在jsp页面中用
<s:set name="userType" value="#session['loginUserType']" />
得到type的值,再根据type的值来输出相应的下拉菜单
<s:if test="#userType=='2'"><s:select name="result" label="审核意见"list="{'Info审核同意','info审核不同意','重新填写信息'}"></s:select></s:if><s:elseif test="#userType=='3'"><s:select name="result" label="审核意见" list="{'最后审核同意','最后审核不同意'}"></s:select></s:elseif><s:else></s:else>但是我的那个下拉菜单没有输出,
我用
<s:property value="#userType" />
输出一看已经有值了是 2
为什么不行啊?# list="{'Info审核同意','info审核不同意','重新填写信息'}"></s:select>
在你的select里并没有value..会提交成功吗?提交上去又会是什么东西?这里是不是也需要修改一下.这样就能生成option的value和key了。。。 7 楼 songjun2007 2008-05-21 <s:if test='#userType=="2"'>应该是要这样写的,之前也有遇到过,如果字符串是数字的话就是比较奇怪 8 楼 yangjianxiang2 2008-05-22 <s:if test="${userType==2}">
</s:if>
<s:else>
</s:else>
这样写就好了麽。楼主写的太麻烦了 9 楼 java.fan 2008-06-26 虽然解决了,但也说一下吧.
搂住既然知道参数是字符串,那么比较字符串 当然是使用equals方法来比较.
#userType.equals('2');
搂住却使用了 == ,这是显然的问题. 10 楼 halk 2008-09-29 想问:
如果测试session 中是否为空值,怎样测试?
<s:if test="#session.user != null">
这样不行. 11 楼 leisure 2008-09-30 觉得用 eq, empty, le 等等取代 == ,!=null,<=比较好