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

标签 javascript html textarea

我有以下 html 标记,其中包含一个文本区域,如下所示。

<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>标记每个句子。最好的方法是什么?

最佳答案

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

关于javascript - 将文本区域文本转换为 Html,并为每个新行添加新的 <p> 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43416892/

相关文章:

php - 在包含 php 文件后,我的表的 css 设置在标题位置消失了

javascript - 使用文本区域创建 jQuery 插件时出现问题

javascript - Slick Carousel - 在移动设备上幻灯片中的 5 个项目变为 1 个

javascript - CORS 策略已阻止从源 'http://localhost:3000' 获取的访问权限

javascript 在 IE 上使用 PHP 发出两次警报问题

html - Spring Thymeleaf + Textarea

html - 文本区域中的文本颜色 Bootstrap

javascript - 在 css3 网站上居中响应式视频背景

javascript - 如何在 IE 11 中以兼容模式强制执行 iframe

css - Div 图层应放置在 Flash 影片之上