追加{{jinja}}

时间:2014-04-05 18:22:17

标签: jquery macros flask append jinja2

我正在创建一个表单,用户可以在其中添加一两个额外的字段...我使用jQuery进行交互,使用Flask进行模板化,它看起来像这样:

<div id="edu_extension"></div>
<a id="add_edu" class="add_line">Add College or University</a>
<script>
   $( document ).ready(function() {
   $(".add_line").mouseup(function(){
        $("#edu_extension").append("
             {{ forms.year('', form_consultant_errors.year, 'pick a year','college1-yearpicker')}}
        ");
   });
   })   
</script>

但不幸的是,Jinja代码破坏了脚本,导致页脚粘在页面中间并在必须附加代码之后呈现代码:

"); });})

所以我想,在xml中是否有类似CDATA的函数,它可以处理代码而无需解析它?

1 个答案:

答案 0 :(得分:2)

使用tojson|safe将Jinja结果插入Javascript:

$("#edu_extension").append(
     {{ forms.year('', form_consultant_errors.year, 'pick a year','college1-yearpicker')|tojson|safe }}
);

这会为您生成一个JavaScript引用的值。