h:outputText 中的 textarea 预格式化和换行

Posted

技术标签:

【中文标题】h:outputText 中的 textarea 预格式化和换行【英文标题】:textarea preformatting and wrapping in h:outputText 【发布时间】:2013-08-15 04:20:42 【问题描述】:

我正在将来自 textarea 的新闻保存在数据库中,并在 JSF 页面上再次显示它们。

当我打印 bean 数据时,如下所示。

这是第 1 行 这是第 2 行

当我尝试编辑时,在 textarea 中,我看到与上面相同。但是当我尝试在<h:outputText> 中打印时,我看到它如下所示。

这是第 1 行 这是第 2 行

即使我使用Sytem.out.println() 进行打印,我也看到输出为

这是第 1 行 这是第 2 行

知道如何在<h:outputText> 中获得这条新行吗?


我也试过this answer,它建议使用white-space: pre

这是可行的,但是当文本的长度很长时,所有长行都在一行而不是下一行,因此我得到了水平滚动条,这不是我想要的。

这个答案适用于小文本,但由于新闻长度很大,这是个问题。

【问题讨论】:

【参考方案1】:

如果您希望同时进行预格式化 包装,请改用:

white-space: pre-wrap;

如果您也想支持 IE6/7(不支持 pre-wrap),请改用:

white-space: pre;
word-wrap: break-word;

【讨论】:

以上是关于h:outputText 中的 textarea 预格式化和换行的主要内容,如果未能解决你的问题,请参考以下文章

JSF 中 f:param 的条件渲染

丰富:效果使用问题

更改 textarea 中的 textarea 光标颜色

Tinymce,我的 textarea 编辑器中的 textarea

textarea 中的 CodeMirror(JS 代码突出显示)文本超出 textarea 宽度

“textarea”中的 JavaFX 8 计数行