【问题标题】:JSF : How put onfocus, onblur effect in input field?JSF:如何在输入字段中设置 onfocus、onblur 效果?
【发布时间】:2011-10-09 16:15:29
【问题描述】:

我正在考虑如何在 JSF 2.0 的输入字段中实现 onfocusonblur 效果。

我在 HTML 中执行以下操作:

<input type="text" name="name" id="name" size="30" value="Name (required)"
   onblur="if (this.value == ''){this.value = 'Name (required)'; }"
   onfocus="if (this.value == 'Name (required)') {this.value = ''; }"
   class="text-input" />

现在我想知道如何在 JSF 2.0 中做到这一点。有人有想法吗?

编辑

我正在尝试属性“onblur”和“onfocus”,但我的输入字段中仍然没有出现任何内容。

<h:inputText onblur="Nome" onfocus="" ></h:inputText>

【问题讨论】:

  • 大多数 JSF 组件都支持相同的属性。只需使用它们并尝试。

标签: java javascript jsf


【解决方案1】:

只需使用&lt;h:inputtext&gt;onblur 属性

【讨论】:

  • 我尝试了你的建议,但仍然没有应用效果。
【解决方案2】:

如果您在呈现的 html 页面上查看源代码,它会显示您正在寻找的 html 吗? - 如果是这样,你很高兴,或者至少它按设计工作:-)。基本上,您拥有的任何 jsf h: type 标记都应该呈现为等效的 html。

【讨论】:

    【解决方案3】:

    您可以只使用与 HTML 示例相同的属性。以下代码可以正常工作:

    <h:inputText id="name" value="Name (required)"
       onblur="if (this.value == ''){this.value = 'Name (required)'; }"
       onfocus="if (this.value == 'Name (required)') {this.value = ''; }" />
    

    【讨论】:

    • 我想在这里使用我的控制器,所以在 value 属性中保持这种方式 value="#{contact.client.name}",而不是 value="Name (required)",明白吗?
    • @Valter:你可以这样做。你可以在你的支持 bean 中初始化这个值。
    猜你喜欢
    • 2011-03-20
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-03
    • 2010-12-03
    相关资源
    最近更新 更多