[英]How to add line breaks into HTML using Javascript
我正在使用数据馈送的网站上工作。 在该数据Feed(通过CSV文件输入)中,有一段文字。 客户正在以项目符号格式输入文本,并希望这样显示。 例如:
- 这里的第一点... *这里的第二点... *这里的第三点...
(客户端对所有点都使用星号,这里是文本编辑器,将第一个转换为项目符号)
有谁知道除第一个星号之前我可以插入换行符的方法,以便此显示为列表? 也许有一点JavaScript?
理想情况下,列表应如下所示:
- 这里的第一点...
- 第二点...
- 第三点...
提前致谢,
汤姆
好的,我从您的问题和评论的混合中猜测出来,但是看起来您列表的呈现的html看起来像这样:
<ul>
<li>First point here... * Second point here... * Third point here...</li>
</ul>
从您的评论看来,您好像在使用jQuery,因此可以执行以下操作:
$(function() {
$('li').each(function() {
var listItem = $(this),
text = listItem.text().replace(/\*/g, '<li>');
listItem.html(text);
});
});
使用正则表达式,您可以编写:
input.replace(/\s\*/g, '\n•');
这将用换行符开头的所有*开头的新符号代替符号。
如果您需要在输入中制作真实的HTML标记(例如li标记),则必须深入研究regexp。 此MDN页面是一个不错的起点。
结合已有的答案,可以使用正则表达式将<li>
* <li>
替换为星号。 例如:
的HTML
<div id="output"></div>
Java脚本
var str = ' * one * two * three';
str = str.replace(/\s\*/g, '<li>');
$('#output').html('<ul>'+str+'</ul>');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.