Javascript jquery load()没有在另一个视图中加载我的django视图
所以我有了我的html,我想在div“radio2”中添加我的django视图。 我正在使用JQuery函数Load(),但我遇到了一个问题,因为它返回错误404和get请求“http://127.0.0.1:8000/post/afafa/%7B%“在div中不加载任何内容 post_detail.html 查看Javascript jquery load()没有在另一个视图中加载我的django视图,javascript,jquery,django,Javascript,Jquery,Django,所以我有了我的html,我想在div“radio2”中添加我的django视图。 我正在使用JQuery函数Load(),但我遇到了一个问题,因为它返回错误404和get请求“http://127.0.0.1:8000/post/afafa/%7B%“在div中不加载任何内容 post_detail.html 查看 @csrf_exempt def radio_test(request): return render(request, 'blogapp/radio2.html') ra
@csrf_exempt
def radio_test(request):
return render(request, 'blogapp/radio2.html')
radio2.html
似乎您正试图在静态文件中使用Django的模板引擎 这将不起作用,因为静态文件不会传递到模板引擎中 有一些变通办法。最简单的方法是在主模板中创建一个全局变量,并将其传递到
load
:
var radio2_url=“{%url”radio2“%””;
将此放在另一个脚本之前
然后在js中:
功能更新\u项(){
$('#radio2')。加载(radio2_url);
}
使用事件委派模型。你的意思是什么?你的javascript中有“{%url'radio2'%}”
。javascript是否在html模板中内联?不,我在main中使用。htmlSo“{%url'radio2'%}”
正在逐字处理。Django的模板引擎不会解释它。您实际上是在将{%url'radio2'%}
传递到load
中,而不是真正的url
$(document).ready(function (){
console.log("Loading page")
$(".radio-btn").click(function(){
console.log("radio - btn")
console.log($(this)[0].id)
$.ajax({
url: "/radio/",
type: 'POST',
data:{
radio: "radio",
input: $(this)[0].id
},
success: update_item()
})
})
})
function update_item() {
$('#radio2').load(
"{% url 'radio2' %}"
);
}
@csrf_exempt
def radio_test(request):
return render(request, 'blogapp/radio2.html')
<div class="radiodiv">
This is Radio2
</div>
Not Found: /post/afafa/{%
[28/Sep/2020 15:52:19] "GET /post/afafa/%7B% HTTP/1.1" 404 3938
[28/Sep/2020 15:52:19] "POST /radio/ HTTP/1.1" 200 79
[28/Sep/2020 15:52:22] "GET /post/afafa/ HTTP/1.1" 200 10761