如何在struts2的文本框标签中添加占位符?

4
我正在使用struts2标签,并希望在标签中添加一个占位符,像这样:
<s:set name="email" value="getText('email')" />
...

<s:form action="Login">
    <s:textfield key="email" theme="simple" placeholder="%{email}" 
         cssClass="span3"/>
    ...
</s:form>

emailglobal.properties 中被定义为 "Correo electrónico"。

我的问题是,当我查看 jsp 页面时,我看到的不是 email 的值,而是 %{email}

我在这里读到了 Struts2 版本 2.3.1 中已解决的错误: https://issues.apache.org/jira/browse/WW-3644,但我正在使用 Struts2 2.3.4,仍然遇到同样的问题。

有人知道解决这个问题的方法或者其他在文本框中放置占位符的方法吗?

2个回答

17

我曾经遇到同样的问题,我是这样解决的:

<s:textfield name="user.email" placeholder="%{getText('settings.email')}" />

我需要更新我的Struts 2和OGNL jar。我的OGNL jar是ognl-3.0.5.jar


明天我会检查它,我保证。 - Pigueiras
没问题!只是想帮忙。 - javiercbk

2

在堆栈命名空间中创建并未推送的变量应该使用 # 前缀:

<s:textfield placeholder="%{#email}" ... etc ... />

它还是不起作用。占位符打印“%{#email}”。它没有评估表达式:( - Pigueiras
2
@DaveNewton - 在自动完成器上放置占位符怎么样? - Amol Ghotankar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接