我目前在我的编辑器中有这个..
* Line one
* Line two
some more info
它位于数据库中
* Line one\r\n* Line two\r\nsome more info
我正在使用Markdown软件包将markdown转为HTML以显示在我的网站上,这样可以正常工作。
然而它忽略了换行符,因此给了我这个输出......
<ul><li>Line one</li><li>Line two\r\nsome more info</li></ul>
当我想要的输出是......
<ul><li>Line one</li><li>Line two</li></ul>some more info
我想在运行降价之前我需要从我的单行制作一个'多行字符串'?
对最佳方法的想法?
目前正在使用此代码
var markdown = require( "markdown" ).markdown;
var unMarkdownDescriptions = function(description){
//Check if currently contains HTML.
if(typeof description !== "undefined"){
if(description.indexOf("<") !=-1){
return description;
}else{
return html_content = markdown.toHTML(description);
}
}else{
return '';
}
}
当前代码检查是否已经在数据库中存储为HTML并忽略它们(我们从HTML迁移到MD,ERP上生成的HTML在最好的时候是狡猾的!)
答案 0 :(得分:2)
,它应该如何表现然而,它忽略了换行符
段落只是一个或多个连续的文本行,由一个或多个空行分隔。 (空行是任何看起来像空行的行 - 除了空格或制表符之外的任何行都被视为空白。)正常段落不应使用空格或制表符缩进。
“一个或多个连续文本行”规则的含义是Markdown支持“硬包装”文本段落。这与大多数其他文本到HTML格式化程序(包括Movable Type的“转换换行符”选项)显着不同,后者将段落中的每个换行符转换为
<br />
标记。
要获得所需的输出,只需在列表后面加一个空白行:
* Line one
* Line two
some more info