无法在html javascript上访问从python render_template(jinja2 / webapp2)传递的参数

时间:2017-03-16 21:57:46

标签: javascript python-2.7 jinja2 webapp2

我正在尝试将参数发送到在我的服务器(python)代码中生成的URL。此URL将通过电子邮件发送给用户。我正在使用Google App Engine来托管我的整个应用程序。

class VerificationHandler(basehandler.BaseHandler):
    def get(self, *args, **kwargs):

        params = {
            'user': user,
            'token': signup_token
            }
        self.render_template('some_url_to_click.html', params)

在我的some_url_to_click.html中,我有以下代码。我使用的框架是Jinja2。

{% extends "main.html" %}

{% block maincontent %}


<div id="text_display_div">

    <br></br>
    <a>Enter Text.</a>

</div>


<script type="text/javascript">
$(document).ready(function(){
    var param_from_backend = '{{ params}}'
    alert (param_from_backend.user)
 });

</script>

我无法在我的javascript中访问params变量。我在param_from_backend.user

上遇到“未定义”错误

1 个答案:

答案 0 :(得分:1)

您必须在JS中单独访问每个变量。这将解决您的问题。

<script type="text/javascript">
$(document).ready(function(){
    var user = '{{ params.user }}';
    var token= '{{ params.signup_token}}';
    alert (user + " " + token);
 });    
</script>