为什么我不能提醒这个从django render_to_response返回的字符串

时间:2010-02-15 07:33:32

标签: javascript python django

django代码:

return render_to_response(template_name, {
        "form": form,
    }, context_instance=RequestContext(request))

和html:

<script type="text/javascript">
        var a='{{form}}'

       alert(a) 
</script>

它的错误是'未终止的字符串文字',

我在firebug中看到了这一点:

<script type="text/javascript">
        var a='"<tr><th><label for="id_username">Username:</label></th><td><input id="id_username" type="text" class="textinput" name="username" maxlength="30" /></td></tr><tr><th><label for="id_email">Email (optional):</label></th><td><input id="id_email" type="text" class="textinput" name="email" /></td></tr>"';
            alert(a) 
    </script>

如何提醒'form'字符串。

感谢

3 个答案:

答案 0 :(得分:1)

也许尝试在Django模板文件的行尾添加分号?

<script type="text/javascript">
    var a='{{form}}';

    alert(a);
</script>

奇怪的是,我很确定那里的冒号是可选的。你能在Firefox中做一个View Source(而不是通过Firebug查看),看看Django实际输出的是什么HTML?

答案 1 :(得分:1)

使用“查看源代码”而不是Firebug检查页面的HTML源代码。我预测您的{{form}}值会有换行符,这会导致您看到的错误。

答案 2 :(得分:0)

我无法重现此错误,将上述内容粘贴到javascript控制台中可以正常运行。 a可能还有其他事情要做吗?是上面的简化或精确的JavaScript?也许你可以显示整个HTML?

相关问题