如何将 markdown 转换为内联 HTML?
How to convert markdown to inline HTML?
使用 Markdown library 我可以执行以下操作:
> markdown.toHTML ("test `some code`")
<- "<p>test <code>some code</code></p>"
因此很容易将简单的 wiki 文本转换为 HTML。但是,结果 HTML 是一个 块 ,我(也)需要内联 HTML,例如用作 <input>
标签。所以,我需要一些函数或一段足够简单的代码来做到这一点:
> ... ("test `some code`")
<- "test <code>some code</code>"
当然,我可以很容易地从字符串中删除 leading/trailing p
标签,但这感觉就像一个 hack。有没有更好的方法(或者更好的库)?
在浏览器中
您可以通过致电 .html()
协助 jquery
完成此操作
http://plnkr.co/edit/Bkzp3het37F3S1E1VVIt?p=preview
var html = markdown.toHTML('test `some code`');
var innerHtml = $(html).html();
alert(innerHtml);
在 NodeJS 中
您可以通过使用第 3 方库来解析名为 cheerio
的 html 来实现此目的
js:
var cheerio = require('cheerio');
var markdown = require("markdown").markdown;
var html = markdown.toHTML("test `some code`");
var $ = cheerio.load(html);
var innerHtml = $.root().contents().html();
console.log(innerHtml);
输出:
test <code>some code</code>
此外,您可以像这样将所有内容包装在一个函数中:
var cheerio = require('cheerio');
function getRidOfRootElement(html){
return cheerio.load(html).root().contents().html();
}
使用 Markdown library 我可以执行以下操作:
> markdown.toHTML ("test `some code`")
<- "<p>test <code>some code</code></p>"
因此很容易将简单的 wiki 文本转换为 HTML。但是,结果 HTML 是一个 块 ,我(也)需要内联 HTML,例如用作 <input>
标签。所以,我需要一些函数或一段足够简单的代码来做到这一点:
> ... ("test `some code`")
<- "test <code>some code</code>"
当然,我可以很容易地从字符串中删除 leading/trailing p
标签,但这感觉就像一个 hack。有没有更好的方法(或者更好的库)?
在浏览器中
您可以通过致电 .html()
jquery
完成此操作
http://plnkr.co/edit/Bkzp3het37F3S1E1VVIt?p=preview
var html = markdown.toHTML('test `some code`');
var innerHtml = $(html).html();
alert(innerHtml);
在 NodeJS 中
您可以通过使用第 3 方库来解析名为 cheerio
js:
var cheerio = require('cheerio');
var markdown = require("markdown").markdown;
var html = markdown.toHTML("test `some code`");
var $ = cheerio.load(html);
var innerHtml = $.root().contents().html();
console.log(innerHtml);
输出:
test <code>some code</code>
此外,您可以像这样将所有内容包装在一个函数中:
var cheerio = require('cheerio');
function getRidOfRootElement(html){
return cheerio.load(html).root().contents().html();
}