我正在使用Richfaces,我正在尝试使用maxlength atrribute设置<textArea>
,但JSF似乎不会从h:inputTextArea传递maxlength属性。任何想法为什么会发生这种情况?
<h:inputTextarea maxlength="100" cols="20" rows="10" value="#{bean.description}" id="description" />
答案 0 :(得分:6)
maxlength
(see doc)上不存在 h:inputTextarea
。
要添加验证器消息,请尝试
<h:inputTextarea >
<f:validateLength maximum="100"></f:validateLength>
</h:inputTextarea>
答案 1 :(得分:1)
我们的解决方案是在包含maxlength数量的textarea前面添加一个额外的跨度。
<span class="maxlength">35</span>
你给那个班级“display:none;”规则隐藏它。然后使用JavaScript查找每个span.maxlength并将其中的数字移动到textarea的maxlength属性中(使用jQuery):
$('span.maxlength').each(function(){
$this = $(this);
$this.next('textarea').attr('maxlength',$this.html());
$this.remove();
});
完成后,运行其他限制在textareas中输入的JavaScript。
哈克?是。但JSF不支持maxlength是hacky。
答案 2 :(得分:1)
这不是RichFaces的问题,而是关注JSF。 它之前也得到了更好的回答。看@BalusC的回答 How to set maxlength attribute on h:inputTextarea