struts2 的if标签是经常用到的 ,但是我却经常不能用好 ,非常苦恼,我的错误如下:
我写了一个下拉框,需要用if来判断 option 中的 value ,决定是否需要选中此项
---请选择---
[/u]selected/s:if >购入
selected/s:if >自备
我的期望是 :当%{remarks}取得的值为购入时 ,选中购入选项,否则选中自备选项。
可是如何都没有完成这个期望。
于是我做了一些测试:
在 之前插入
页面显示结果: 购入
${remarks} 页面显示结果: 购入
于是我这样写:
selected/s:if >购入 :出错!!!
[/u] == '自备' ">selected/s:if >自备 :出错!!!
第1个下划线处 %{}应该是没有取到值
第2 和 第3下划线处都出错了,不知这三处原因分别是什么呢?
有知道的并且路过了,请您支招一二 ,
小弟万分感激。。
[quote]selected/s:if >购入 [/quote]
因为字符串必须用双引号定义
[code="java"]selected/s:if >购入 [/code]
即可
[quote]selected/s:if >购入[/quote]
同上
注:${remarks}不知道要不要用双引号标注,这要看struts对el表达式的支持程度。具体怎么样,个人感觉要改为
[code="java"]selected/s:if >购入[/code]
[quote] == '自备' ">selected/s:if >自备[/quote]
同上
[code="java"] == "自备" ">selected/s:if >自备[/code]
....
/s:select
用struts2的标签就可以了,何必这样呢?
'购入'这里能用单引号吗?
\" :o :o \"
你可以试试equals, ,标签里支持写equals的,前提是字符串,当然你的是字符串。
remarks 是怎么设值进来的?
你试equals了吗?类似这种<s:if test="'219.211.211.82'.equals(ipaddress)||'59.