将文本区域文本转换为Html,并为每个新行添加新的<p>标记

时间:2017-04-14 18:08:59

标签: javascript html textarea

我有以下html标记,其中包含textarea,如下所示。

<textarea id="text" rows="10">First sentence. Second sentence? Third sentence!Fourth sentence.

Fifth sentence. Six sentence.

Last sentence.
</textarea>

我希望将其转换为以下的html。

<p>First sentence. Second sentence? Third sentence!Fourth sentence.</P>
<p>Fifth sentence. Six sentence.</p>
<p>Last sentence.</p>

为每个换行创建新的<p>标记。

我已经能够使用以下代码将段落作为数组。

var str = document.getElementById("text").value;
var sentences = str.split(/\r\n|\r|\n|[.|!|?]\s/gi);

但是我只能循环遍历每个句子都有一个<p>标签。什么是最好的方法?

1 个答案:

答案 0 :(得分:5)

将您的拆分修改为此var sentences = str.split(/\r\n|\r|\n/gi); 然后当你循环数组时,忽略空字符串并将非空字符串包装在<p>标记中。