【发布时间】:2012-02-20 19:06:52
【问题描述】:
我可以在没有支持 bean 的情况下即时获取 inputTextare 的值吗?
<p:dialog>
<p:inputTextarea rows="5" cols="30" value="#{_var.note}" />
<h:outputText id="remaining" value="#{util.getCharactersRemaining("varibale of textarea", 160)} characters left" />
public class UtilFacade {
public int getCharactersRemaining(String value, int maxLength) {
log.info("length: " + value.length());
return (maxLength - value.length());
}
}
为了在对话框中显示剩余的字符,我必须在 Textarea 中为方法提供当前值,而不将值保存到支持 bean! 我怎样才能得到这个值?
【问题讨论】:
-
你试过
#{util.getCharactersRemaining(_var.note, 160)}吗? -
不太确定你想要什么。如果您想要实时通知,那么您需要在 inputTextArea 上放置一个自定义的 jQuery 按键处理函数来执行即时验证,而无需服务器端回发。否则,如果您希望 outputText 显示验证消息,那么您应该在 inputTextArea 上使用
<f:validateLength>facet 以确保您的输入不超过最大长度。