【问题标题】:How can I put a placeholder in a struts2 textfield tag?如何在 struts2 文本字段标签中放置占位符?
【发布时间】:2012-06-24 16:24:11
【问题描述】:

我正在使用 struts2 标记并希望在 <s:textfield> 标记中放置一个占位符,如下所示:

<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 electronic”。

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

我在此处读到这是 Struts2 的 2.3.1 版本中解决的错误:https://issues.apache.org/jira/browse/WW-3644,但我使用的是 Struts2 2.3.4,并且一直遇到同样的问题。

有人知道这个问题的任何解决方案或将占位符放在文本字段中的任何其他方式吗?

【问题讨论】:

    标签: java html struts2 placeholder


    【解决方案1】:

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

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

    【讨论】:

    • 它也不起作用。占位符打印%{#email}。它不评估表达式:(
    • @DaveNewton - 在自动完成器上放置占位符怎么样?
    【解决方案2】:

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

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

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

    【讨论】:

    • 明天我会检查的,我保证。
    • 没问题!只是想帮忙
    猜你喜欢
    • 2011-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-30
    • 2012-12-21
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    相关资源
    最近更新 更多