我有一个python flask函数,它呈现一个html页面并将动态变量发送到该html页面:
return render_template('index.html', start_date=str(start_date), end_date=str(end_date))
在html页面中,我使用javascript来阅读start_date
和end_date
变量。但是,因为我以mm/dd/yyyy
格式传递日期,看起来像03/28/2016
。 Javascript将日期值计算为数学表达式,并返回0.0000531462585..
而不是返回03/28/2016
。
这是我的JavaScript代码,用于读取烧瓶呈现给index.html的日期变量:
var startDate = {{ start_date }}
如何确保将日期变量作为String而不是计算值?
答案 0 :(得分:2)
var startDate = {{ start_date }};
呈现为
var startDate = 03/28/2016;
这导致3的数学除以28除以2016,或0.0000531462585 ..
您可以使用a couple of Flask and Jinja2 filters智能地将字符串作为字符串和数字处理为数字。
var startDate = {{ start_date|tojson|safe }};
将呈现为
var startDate = '03/28/2016';
或类似的东西。
答案 1 :(得分:0)
看起来你只需要确保start_date
是一个字符串。请改为var startDate = start_date.toString();
。