【发布时间】:2017-09-14 09:22:46
【问题描述】:
我编写了一个非常简单的 ajax 代码,它发出一个 get 请求,它期望 django 模板值作为响应。因此,当我尝试在网络下的 chrome 中执行此 ajax 代码时,我可以看到 get 请求成功,并且在网络下的预览部分中,我可以看到我预期的模板值,但网页保持不变,不不会再次渲染。
我的看法:
def test(request,id=1):
return render(request,'test.html',{'num':id,'next':9})
我的模板和 ajax 代码:
<script src='https://code.jquery.com/jquery-3.2.1.min.js'></script>
<p>{{num}}</p>
<button onclick='test({{next}})'>Test</button>
<script>
function test(next){
$.ajax({
url:'/test/'+next,
type: 'GET',
success: function(){
console.log('done');
}
});
}
</script>
【问题讨论】:
-
您正在混合服务器端渲染 (DTL) 和客户端 (javascript)
-
既然我有了需要呈现的响应,我下一步应该如何更新页面??