我已经创建了一个模板标签,它将接受2个参数,并返回一个文本。目前,我无法将javascript变量值传递给django模板标记。你能帮我吗?
带有模板标记的javascript代码
function formatState (state) {
if (!state.id) {
return state.text;
}
console.log(state.text);
var x = "{% get_data state.text 'account' %}";
var $state = $('<span class="badge">' + x + '</span>');
return $state;
}
模板标记
@register.simple_tag
def get_data(value, module):
*****
x = "hello"
return x
答案 0 :(得分:1)
您的Django模板在服务器上呈现,然后发送到运行JS的客户端。您无法从模板中的服务器访问JS变量,因为它们在那里不存在。
如果您需要使用Django从前端访问数据,则可以创建一个视图函数,该函数将执行POST请求,并使用JS将数据发送到服务器,然后返回一些模板,您可以使用这些模板添加到页面中JS。