使用 Struts 2 <s:select>
标签,我有以下一段代码,其中下拉列表的值是硬编码的。
<s:select name="xxx" id="xxx" list="#{'1':'emailON', '0':'emailOFF'}" value="abc.xyz"/>
我想从属性文件中读取这些值(emailON和emailOFF(。
尝试了这种方法,其中相应的文本名称在属性文件中映射:
<s:select name="emailOnOff" id="emailOnOff" list="#{'1': 's:text name="label.myaccount.emailON"', '0': 's:text name="label.myaccount.emailOFF"'}" value="abc.xyz"/>
但收到以下错误:
org.apache.jasper.JasperException: /xx/my_account.jsp (line: xx, column: xx) equal symbol expected
如果属性文件中存在值,我们如何实际传递这些值?
您不能在 Struts 标签的属性中使用嵌套的 JSP 标签。要从资源包中检索属性,可以在 OGNL 表达式中使用getText()
。
<小时 />获取基于消息密钥的消息,如果未找到消息,则返回提供的密钥。
代码:
<s:select name="emailOnOff"
id="emailOnOff"
list="#{
'1': getText("label.myaccount.emailON"),
'0': getText("label.myaccount.emailOFF")
}"
value="abc.xyz"
/>
<小时 />