struts2标签 ,表达式的写法

fg5825 2013-01-17 11:27:39
<s:iterator value="categorys" id="c">
<s:if test="-1 == <s:property value='#c.pId'/>">
1
</s:if>
<s:else>
2
</s:else>
</s:iterator>
当<s:property value=“#c.pId”/>值为1时,表达式还是false,为何
...全文
17291 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fg5825 2013-01-18
  • 打赏
  • 举报
回复
4楼正解,谢谢大家参与
无情天下 2013-01-18
  • 打赏
  • 举报
回复
sorry从来没有测试时等于-1的
  • 打赏
  • 举报
回复
引用 7 楼 sd4000784 的回复:
<s:iterator value="categorys" id="c"> <s:if test='#c.pId.equals("-1")'> 1 </s:if> </s:iterator>
  • 打赏
  • 举报
回复
引用 楼主 fg5825 的回复:
<s:iterator value="categorys" id="c"> <s:if test="-1 == <s:property value='#c.pId'/>"> 1 </s:if> <s:else> 2 </s:else> </s:iterator> 当<s:property value=“#c.pId”/>值为1时,表达式还是false,……
如果c.pId类型是数字 #4楼可以满足 如果是字符串需要改下
<s:iterator value="categorys" id="c">
<s:if test='c.pId.equals("-1")'> 
1
</s:if>
</s:iterator>
fx_xf 2013-01-18
  • 打赏
  • 举报
回复
sorry没测试,你可以打开火狐的debug测试一下,看看比较那段表达式的结果。
艾小仙 2013-01-18
  • 打赏
  • 举报
回复
引用 4 楼 suciver 的回复:
已经在struts2标签中就不用在用<s:property value="#c.pId"/> 直接写成这样 s:iterator value="categorys" id="c"> <s:if test="1 == #c.pId"> 1 </s:if> <s:else> 2 </s:else> </s:iterator>
+1 如果你是在循环里 一般要加上# <s:if test="1 == #c.pId"> 如果就只是一个对象或者单独的一个值 就不用#号了
suciver 2013-01-18
  • 打赏
  • 举报
回复
已经在struts2标签中就不用在用<s:property value="#c.pId"/> 直接写成这样 s:iterator value="categorys" id="c"> <s:if test="1 == #c.pId"> 1 </s:if> <s:else> 2 </s:else> </s:iterator>
fx_xf 2013-01-18
  • 打赏
  • 举报
回复
<s:if test="%{false}"> <div>***********</div> </s:if> <s:elseif test="%{true}"> <div>!!!!!!!!!!!</div> </s:elseif>
fg5825 2013-01-18
  • 打赏
  • 举报
回复
写错了,有值是1的,也是false
LucEaspe 2013-01-18
  • 打赏
  • 举报
回复
你是-1!!!

81,120

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧