0

我正在尝试做一些类似于softwaremaniacs.org或 stackoverflow 的事情。当你问一个问题时,它会显示你写的两次,一次是普通的文本格式,另一次是不同的格式(Markdown)。

为了实现这一点,我的第一个想法是:使用 JQuery keyup,通过 AJAX POST 将文本发送到我的 Django url,然后呈现文本并将其发送到将其显示为 Markdown 格式的模板。

在我的浏览器中查看开发人员工具中的网络响应,这似乎有效,但由于某种原因,它不显示(更新)内容。

这是我的一些代码片段

AJAX

$('#input').keyup(function(){
    $.ajax({
        type: "POST",
        url: "/post/blog/",
        data: { 
            'input_text' : $('#input').val(),
            'csrfmiddlewaretoken' : $("input[name=csrfmiddlewaretoken]").val()
        },
        success: function(){
            console.log('success');
        },
        dataType: 'html'
    });
});

视图.py

def post_blog(request):
    if request.method == 'POST':
        text = request.POST['input_text']
        return render(request, 'blog/post.html', {'input_text': text})

博客/post.html

{% load markup %}
<tr>
    <td id="input">
        <p>{{ input_text|markdow }}</p>
    </td>
</tr>
4

1 回答 1

0

你为什么将它一直发送回服务器?为什么不使用Showdown在用户的浏览器中呈现 markdown。

于 2013-11-13T22:28:35.637 回答