不能使用StackExchanges's PageDown将markdown转换为HTML

Can't convert markdown into HTML using StackExchanges's PageDown

本文关键字:PageDown markdown 转换 HTML StackExchanges 不能      更新时间:2023-09-26

我有一个直接存储标记代码(由PageDown的编辑器生成)到数据库的方法。在另一个页面上,我从数据库中获取标记,并通过markdown转换器运行它,但是我似乎无法得到任何输出。这是我的脚本:

<script type="text/javascript" src="include/Markdown.Converter.js"></script>
<script type="text/javascript" src="include/Markdown.Sanitizer.js"></script>
<script type="text/javascript" src="include/Markdown.Editor.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        var converter = Markdown.Converter();
        $("#description-content").text(converter.makeHTML("<?php echo $description ?>"));
    });
</script>

PHP回显来自数据库的纯降价文本。当我访问页面时,div中没有显示任何内容。我做错了什么?

编辑:我没有看到任何回显文本,如果我简单地在.text()中添加明文,我可以看到它。

Markdown.Converter是构造函数;你必须使用

var converter = new Markdown.Converter();

迟来的回答,但可能对新访客有所帮助

如果你从数据库获取结果并通过PHP回显,我更喜欢https://michelf.ca/projects/php-markdown/classic/

下载文件后,可以使用它将标记文本转换为html。

<?php 
$query_post = mysqli_query($con,"SELECT * FROM `posts` ...//your query
$row_post = mysqli_fetch_assoc($query_post);
$content = $row_post['Body'];
include("path-to/PHP-Markdown-Extra-1.2.8/markdown.php");
$text = <<<EOD
$content
EOD;
echo Markdown($text);
?>

这将显示结果,如我的答案在这里,或任何其他的答案或问题在这里的stackoverflow

欢呼

也许你可以尝试使用Showdown而不是PageDown,看看你是否得到任何不同的结果,就像一个测试:https://github.com/coreyti/showdown/blob/master/src/showdown.js Showdown是另一个Markdown js实现。

你在那里的代码看起来没有任何问题,我能想到的唯一边缘情况是$description中的未转义引号。

相关文章: