【问题标题】:Select input text on validation error in JSF在 JSF 中选择验证错误的输入文本
【发布时间】:2016-01-14 18:50:36
【问题描述】:

我有一个输入文本,我想在验证错误时选择文本区域内的值。它是一个输入文本。我正在使用焦点来设置该领域的焦点。代码确实会引发错误,但我也希望选择输入值

<p:focus for="inputText" />
   <p:inputText id="inputText" value="#{bean.value}" required="true" rendered="#{bean.method}" styleClass="xyz"/>

【问题讨论】:

  • 这可能会对您有所帮助:stackoverflow.com/questions/9617914/…,但如果您提供更多代码会更好,例如在点击命令按钮时触发此验证错误?
  • 是的,命令按钮触发验证。它抛出一个错误就好了。我只需要它也可以选择文本区域内的值

标签: jsf primefaces


【解决方案1】:

PrimeFaces p:focus 自动聚焦第一个无效输入。如此有效,PrimeFaces 与解决方案的其余部分无关。客户端都是html

要在输入集中时选择文本,请使用类似

<p:inputText onfocus="this.setSelectionRange(0, this.value.length)" .../>

您可以将其扩展为首先检查输入是否无效,方法是检查是否存在错误类,如果不无效则不选择任何内容(未测试):

<p:inputText onfocus="$(this).hasClass('ui-state-error' ? this.setSelectionRange(0, this.value.length) : return" .../>

如果您希望所有输入都使用此功能或不想要任何内联 javascript,请创建一个 jquery 事件处理程序

【讨论】:

  • onfocus="this.setSelectionRange(0, this.value.length)"
  • 谢谢,我没有去掉,只是不小心把前面的空行去掉了。所以它不再被解释为代码。已恢复,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-27
  • 2012-03-25
  • 2016-01-29
  • 2014-04-11
  • 2012-01-06
  • 2012-07-14
  • 1970-01-01
相关资源
最近更新 更多