如何在h:inputTextarea中提供硬编码的多行内容

时间:2014-10-06 09:37:41

标签: jsf-2 textarea

在HTML中,我可以这样做:

<textarea>
line 1
line 2
line 3
</textarea>

然而,同样的事情不适用于JSF <h:inputTextarea>,因为我必须指定value属性而不是正文。有没有办法可以指定多行值?理想情况下,我希望能够像在HTML中一样无缝地执行它,即没有\n并且实际上将它放在多行上,以便于阅读。

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

<h:outputFormat escape="false" value="Line 1<br/>Line 2" />

会呈现:

第1行

第2行

注意:escape =“false”表示您可以嵌入html,例如列表等...

或者我们甚至可以尝试这样:

或者,您可以在inputTextArea上将readonly设置为true并设置rows属性。

我希望这会对你有所帮助

答案 1 :(得分:0)

好吧,我找不到将textarea内容直接包含在.xhtml中的方法,同时将内容保存在几行上。可能有一种方法可以通过使用不同的标签然后将其复制到某些javascript,但我想保持它相当干净。

我最终做的是使用h:inputTextarea的value属性,并从我的managedBean填充它。我创建了我想要的内容的文本文件(它们是相当大的文件),并使用FileReader将它们加载到managedBean属性中。当你将它们分配给h:inputTextArea的值时,\ n等会受到尊重,因此如果你将文本硬编码到textarea标签之间的.xhtml中,它会产生相同的效果。