我在Flask中将一个列表从python传递给JavaScript,我希望输出作为JavaScrip中的Object

2024-04-25 11:55:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我的python函数:

def somefunction(self):
  x1 = ['reduced','fully automatic','years']
  return x1

烧瓶应用程序类型文件

keyword = somefunction()   

html中的JavaScript:

<script>
var javaword = '{{ keyword }}';
somefunction {
alert(typeof(javaword));
alert(javaword);
}

----------
Output -
String
[&#39;reduced&#39;, &#39;fully automatic&#39;, &#39;years&#39;]

我要输出为

Object
['reduced','fully automatic','years']

已解决

我想出来了,改了以下内容

var javaword =JSON.parse('{{ keyword|tojson }}');

Tags: 函数selfreturn烧瓶vardefalertkeyword
1条回答
网友
1楼 · 发布于 2024-04-25 11:55:48

三件事。首先,您需要将其作为JSON而不是Python字符串发送;其次,您需要为该变量禁用Jinja2自动转义;最后,您的JS需要将其从JSON字符串解析为JS对象。所以:

return jsonify(x1)

。。。你知道吗

var javaword = JSON.parse('{{ keyword|safe }}');

相关问题 更多 >