我可以将html元素传递到jinja变量中吗?

时间:2019-05-08 18:42:57

标签: javascript html templates jinja2

我正在尝试建立一种自动格式化输入字段以使用python语言环境模块的货币功能的方法。但是,我遇到了将引用传递到jinja段的问题。

如果我像这样对输入的值进行硬编码,它将为我提供格式正确的值:

<input onkeyup="this.value='{{ currency(20)) }}'>

但是,我真正需要的不是传递20,而是希望它使用用户输入,因此我需要传递输入字段本身的当前值。

我尝试过类似的事情:

<input onkeyup="this.value='{{ currency(this.value())) }}'>

我也尝试过使用document.getElementbyId和许多其他变体,问题是{{}}内部没有这些对象可用。任何人都有建议,神社有能力进行这种动态处理吗?

1 个答案:

答案 0 :(得分:1)

这是不可能的,因为Jinja在将页面发送到客户端并运行任何Javascript之前创建了HTML。

在服务器端Python中动态执行此操作的唯一方法是通过AJAX调用,这会非常低效。

我的建议是您在Javascript中找到货币格式化功能的实现。一个快速的谷歌应该会给你很多选择。