Skip to content

How to insert a JavaScript variable into Flask url_for() function?

I have following code in my Flask template:

<div id="cell1"></div>
var id="0014";
cell1.innerHTML = '<a href={{url_for('static',filename='+id+'".txt")}}">'+id+'</a>';

I want the link to render to:


But I got this:


How to make the js variable id in Flask url_for() function work?

Thanks for your help!


Try this:

cell1.innerHTML = '<a href={{ url_for('static', filename='') }}' + id + '.txt>' + id + '</a>';

url_for() will generate an URL like this: .../static/<filename>. If you use url_for('static', filename=''), it generate an URL like: .../static/, so you can just add text after it (i.e. + id + '.txt>') .