如何将JavaScript变量插入到包含Jinja标记的字符串中?
我有一个javascript函数,它试图在网页中动态插入一个锚定标记,其中的href attr是一个路由的url。此路由接受一个参数如何将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 + '>
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>');