Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将JavaScript变量插入到包含Jinja标记的字符串中?_Javascript_Python 3.x_Flask_Jinja2 - Fatal编程技术网

如何将JavaScript变量插入到包含Jinja标记的字符串中?

如何将JavaScript变量插入到包含Jinja标记的字符串中?,javascript,python-3.x,flask,jinja2,Javascript,Python 3.x,Flask,Jinja2,我有一个javascript函数,它试图在网页中动态插入一个锚定标记,其中的href attr是一个路由的url。此路由接受一个参数username。我想将username设置为javascript变量的值 我已尝试使用模板文字: let username = 'user1'; let href = `{{ url_for("some.route", username=${username}) }}` $("#elem").append('<a href=' + href + '>

我有一个javascript函数,它试图在网页中动态插入一个锚定标记,其中的href attr是一个路由的url。此路由接受一个参数
username
。我想将
username
设置为javascript变量的值

我已尝试使用模板文字:

let username = 'user1';
let href = `{{ url_for("some.route", username=${username}) }}`

$("#elem").append('<a href=' + href + '></a>');
这将导致文本字符串
+username+
被传递到路由


有什么办法吗?

我想这是不可能的。Jinja2模板在服务器端执行,而不是JS代码在客户端(在浏览器中)执行。那么,如果我将一个值硬编码到
href
变量中,例如
let href={{url\u for(“some.route”,username=“bob”)}
如果有一个名为bob的用户,它是否工作?这会在不重新加载页面的情况下生成有效的Jinja,即在从服务器获得响应后,我认为这是不可能的。Jinja2模板在服务器端执行,而不是JS代码在客户端(在浏览器中)执行。那么,如果我将一个值硬编码到
href
变量中,例如
let href={{url\u for(“some.route”,username=“bob”)}
如果有一个名为bob的用户,它是否工作?这将生成有效的Jinja,而无需重新加载页面,即从服务器获得响应后
let username = 'user1';
let href = '{{ url_for("some.route", username=' + username + ')}}'

$("#elem").append('<a href=' + href + '></a>');