如何在 django 中重新加载一段网页?
Posted
技术标签:
【中文标题】如何在 django 中重新加载一段网页?【英文标题】:how to reload a segment of webpage in django? 【发布时间】:2019-07-25 11:55:42 【问题描述】:在 django 中,我试图通过加载 html 文件来制作更改网页一部分的按钮。 html 文件显示地图和统计数据等内容,因此它们必须分开。 我的方法是使用 ajax 调用并在视图中返回 html 文件。
<script type="text/javascript" >
function mapcall (office, year)
console.log(office, year, "clicked")
$.ajax (
method : "GET",
url: '/map/', // % url "map" % end point
data:
office_called: office,
year_called: year,
,
success: function (map)
console.log("map is here ", map)
$("#maparea").load($( "% static 'my_html_return' %"
)),
error: function (error_data)
alert("data error, sorry")
)
</script>
<div id="maparea">
% if map_return %
% with map_template=map_return|stringformat:"s"|add:".html" %
% include "mypath/"|add:map_template %
% endwith %
% endif %
</div>
这是我的观点.py
def get_map (request, *args, **kwargs):
year = request.GET.get("year_called")
office = request.GET.get("office_called")
map_return = "map"+str(year)+office
return render(request, "mypath/home.html",
"title": "Home", "map_return":map_return)
我不知道如何进行这项工作。任何建议表示赞赏。
【问题讨论】:
如果你在另一个 html 文件中有地图,为什么不使用包含标签 包含在 django 标签中?还是别的什么? 顺便提一下,地图其实是一个包含图片地图的html文件 【参考方案1】:我发现在我的情况下我需要做 .html(将 ajax 返回的 html 作为参数)而不是 .load。 我希望这对其他人有所帮助。
【讨论】:
以上是关于如何在 django 中重新加载一段网页?的主要内容,如果未能解决你的问题,请参考以下文章
如何在javascript中单击按钮重新加载网页,但在重新加载调用函数后
如何在 DJango 中停止页面重新加载 ajax jquery