【问题标题】:Access Array from javascript to jinja访问数组从 javascript 到 jinja
【发布时间】:2013-11-12 11:23:58
【问题描述】:

如何从 javascript 读取数组到 jinja 模板:

        <script type="text/javascript">

    var x =0;
    function ActionDeterminator() {
    x=x+1;
         document.getElementById("me").innerHTML=x;
         var $label = $('input[id = optionD]').next();
    $label.text(x); 
         alert('{{option_D[0]}}');
        return true;
        }
    </script>>

当我使用上面的代码时.. 它工作得很好。但是当我想像这样放置变量 x 时:

        <script type="text/javascript">

var x =0;
function ActionDeterminator() {
x=x+1;
     document.getElementById("me").innerHTML=x;
     var $label = $('input[id = optionD]').next();
$label.text(x); 
     alert('{{option_D[x]}}');
    return true;
    }
</script>>

我得到一个空的警报对话框。谁能告诉我如何解决这个问题

【问题讨论】:

    标签: javascript python google-app-engine jinja2


    【解决方案1】:

    您应该能够意识到,在 '{{option_D[x]}}' 中,整个表达式在到达浏览器之前由 Jinja 评估,而 Jinja 对 x 是什么一无所知。

    相反,您应该让 Jinja 将整个列表输出为 JS 数组,然后让 Javascript 进行元素选择:

    alert({{ option_D }}[x]);
    

    您可能需要在服务器端将 option_D 转换为 JSON,然后再将其发送到模板才能正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-18
      • 1970-01-01
      • 1970-01-01
      • 2012-08-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多