我正在使用showdown.js和codeigniter。一旦我将代码插入到数据库中,我应该可以从我的数据库中预览问题。如何让showdown.js使用数据库codeigniter中的文本
当我尝试查看它。
它显示了错误的萤火
语法错误未结束的字符串
的Javascript摊牌
<script type="text/javascript">
var converter = new showdown.Converter(),
text = '<?php echo $output;?>',
target = document.getElementById('output'),
html = converter.makeHtml(text);
target.innerHTML = html;
</script>
问题:如何使showdown.js处理文本从代码数据库
控制器
HTML
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="<?php echo base_url('assets/bootstrap3/css/bootstrap.css');?>">
<script type="text/javascript" src="<?php echo base_url('assets/jQuery/jquery-3.1.1.js');?>"></script>
<script type="text/javascript" src="<?php echo base_url('assets/bootstrap3/js/bootstrap.js');?>"></script>
<script type="text/javascript" src="<?php echo base_url('assets/showdown/dist/showdown.js');?>"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-lg-12">
<textarea rows="10" class="form-control" id="editor"></textarea>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div id="preview"></div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div id="output"></div>
</div>
</div>
</div>
<script type="text/javascript">
$("#editor").on('keyup', function(e) {
var text = document.getElementById('editor').value,
target = document.getElementById('preview'),
converter = new showdown.Converter(),
html = converter.makeHtml(text);
target.innerHTML = html;
});
</script>
<script type="text/javascript">
var converter = new showdown.Converter(),
text = '<?php echo $output;?>',
target = document.getElementById('output'),
html = converter.makeHtml(text);
target.innerHTML = html;
</script>
</body>
</html>
因此,您试图通过您的视图找到一些“标记”,然后让脚本将它重新写回到重新格式化的相同位置。它可以工作...尝试在$(document).ready(function(){)中包装JS;确保您的“文本”在您的视图源代码生成页面时将其显示在页面上。 – TimBrownlaw
@TimBrownlaw https://github.com/showdownjs/showdown – user4419336
是的,在回答之前就已经去过那里了:)好的,所以我不能编辑我的初始评论,所以我会在这次更加糟糕地重申它...所以你正在向JS喷出一些标记,并将格式化文本写入div ... – TimBrownlaw