我正在使用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