使用parsedown和codeigniter在预览中不显示空的换行符

时间:2016-11-25 04:36:23

标签: codeigniter parsedown

我正在使用parsedown和codeigniter。在我的textarea上,如果我添加了一些空行,则它们不会在预览中显示。它只在预览框中添加一个\n

如此图像所示注意:预览是图像中的底部框

enter image description here

正如您在顶部框中看到的那样是textarea。在最后一行之前有一个很大的差距。它没有在预览中显示? 如果我尝试用br或nlbr替换换行符,它会影响解析后的缩进代码

  

使用codeigniter和parsedown的问题我怎样才能确定我什么时候   从控制器回显它将显示相同数量的线。

脚本

<script type="text/javascript">
$( document ).ready(function() {
    $('#editor').on('paste cut mouseup mousedown mouseout keydown keyup', function(){
        var postData = {
            'html' : $('#editor').val(),
        };
        $.ajax({
            type: "POST",
            url: "<?php echo base_url('example/preview');?>",
            data: postData,
            dataType: 'json',
            success: function(json){
                $('#output').html(json['output']);
            }
        });
    });
});
</script>

控制器

<?php

class Example extends CI_Controller {

public function __construct() {
    parent::__construct();
    $this->load->library('parsedown');
}

public function index()
{
    $this->load->view('example_view');
}

public function preview() {
    $data['success'] = false;
    $data['output'] = '';

    if ($this->input->post('html')) {
        $data['success'] = true;
        // Using br or nlbr effect the code indents so can not use it.
        $data['output'] = str_replace('\n', '<br/>', $this->parsedown->text($this->input->post('html')));
    }

    echo json_encode($data);
}

1 个答案:

答案 0 :(得分:0)

您需要使用双断符来创建空行。

Something on this line
<br><br>
This line has a blank line above it.

您可以计算出多个空白行所需的内容。

http://parsedown.org/demo进行游戏以进行测试。