我正在使用Richfaces,我试图使<textArea>
具有maxlength属性集,但JSF似乎没有从h:inputTextArea传递maxlength属性。知道为什么会这样吗?
<h:inputTextarea maxlength="100" cols="20" rows="10" value="#{bean.description}" id="description" />
maxlength
在h:inputTextarea
上不存在
要添加验证器消息,请尝试
<h:inputTextarea >
<f:validateLength maximum="100"></f:validateLength>
</h:inputTextarea>
我们的解决方案是在包含maxlength数字的textarea前面立即添加一个额外的span。
<span class="maxlength">35</span>
你给这个类一个"display: none;"规则来隐藏它。然后使用JavaScript查找每个span。并将其内部的数字移动到textarea的maxlength属性中(使用jQuery):
$('span.maxlength').each(function(){
$this = $(this);
$this.next('textarea').attr('maxlength',$this.html());
$this.remove();
});
完成后,运行其他限制文本区域输入的JavaScript。
出租汽车司机吗?是的。但是JSF不支持maxlength是很糟糕的。
这不是一个真正的RichFaces问题,而是JSF的问题。以前也有过更好的回答。请看@BalusC的回答如何在h上设置maxlength属性:inputTextarea