javascript - 有没有办法用 Javascript 变量替换 HTML 变量?
问题描述
所以我在 html 中有一个名为“posts”的变量,并在 for 循环中使用它来创建一系列很好的帖子。
{% for post in posts %}
{% with voteform = voteform, votes = votes, post = post %}
{%include "postlayout.html"%}
{% endwith %}
{% endfor %}
</div>
然后我使用 Ajax 从烧瓶中检索一个新的查询列表,并根据用户选择的过滤器返回另一个系列的帖子。
$('input[type=checkbox]:checked').each(function(){
all.push($(this).val());
});
console.log(all)
var moods = {
'filters': all
};
$.ajax({
url : "/update",
type: 'POST',
data: JSON.stringify(moods),
contentType: 'application/json;charset=UTF-8',
success: function(resp){
$('div#response').html('posts <br>')
for (var key in resp.data) {
var val = resp.data[key]
console.log(val)
$('div#response').append(resp.data[key]['songname'] + ' by ' +
resp.data[key]['artist'] + '<br>')
}
console.log(resp.data)
},
error: function(error){
console.log(error)
}
});
}
所以我想知道是否有办法用我的json代码中的“resp.data”替换我的html代码中的“posts”。
解决方案
抱歉不行。
Flask 模板在发出 AJAX 请求之前呈现到 HTML 服务器端,因此您不能在 Flask 模板中使用 AJAX 响应。
您必须使用 JavaScript(或/和 jQuery)循环响应数据并插入所需的 HTML。
推荐阅读
- django - Django LoginRequiredMixedIn 不允许用户登录
- amazon-web-services - Sagemaker Neo 编译带有动态输入数据大小
- flutter - Flutter ios应用程序中的Facebook登录问题
- c# - JWT 令牌错误 401 Unauthorized in .net core 3.1
- bash - 使用 awk/bash 返回 0 值时无法打印语句
- python - 制作具有两个约束的不可见字段
- azure - Runbook 自动化失败,但 powershell cmd 行工作正常
- docker - PhpStorm 2019.3.4 External Tools 输入设备不是 TTY。如果您使用的是 mintty,请尝试在命令前加上“winpty”
- c++ - 多级继承和访问属性
- wordpress - woocommerce get_order_report_data 使用元键的日期过滤器