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

esa*_*wan 0 html javascript textarea

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

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

Fifth sentence. Six sentence.

Last sentence.
</textarea>
Run Code Online (Sandbox Code Playgroud)

我希望这个转换为下面的html.

<p>First sentence. Second sentence? Third sentence!Fourth sentence.</P>
<p>Fifth sentence. Six sentence.</p>
<p>Last sentence.</p>
Run Code Online (Sandbox Code Playgroud)

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

我已经能够使用下面的代码将段落作为数组.

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

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

gfo*_*301 6

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