文章目录
Django中jQuery的Ajax请求
在网上找的jQuery的Ajax请求,让人看的云里雾里的,我总结一下,主要有3种方法,下面的$.get()和$.post()底层实现还是使用了$.ajax(),建议使用$.get()和$.post(),当然你也可以使用$.ajax()
$.ajax({键:值,键:值…})
键值对内容
type:“POST” 请求方式
contentType: “application/json;charset=UTF-8” 请求的媒体类型
url : “地址” 请求地址
data : {键:值,键:值…} 请求数据
success : function(){} 成功时做什么
error : function(){} 失败时做什么
$.get(url,data,function(data){})
url 请求的url
data 请求数据是键值对
function(data){} 里面的data就是服务器返回来的数据,之后通过函数来操作后续操作
$.get("test_ajax/",{ "data":dat },function (data) {//dat是发送给服务器的数据
if(data.status == "success")//data是后端返回的数据
alert(data.msg);
});
后台服务器代码
def test_ajax(request):
if request.is_ajax() and request.method =="GET":
d = request.GET.get("data")//获取的data其实就是前端的dat
return JsonResponse({"status":"success","msg":"ok"})//返回给前端的JSON数据
$.post(url,data,function(data){})
$.post("test_ajax2/",{ "data":"dat" },function (data) {
if(data.status == "success"){//接收后端传来的{"status":"success","msg":result}
$.each(data.msg,function (i,n) {//遍历data里面的msg
alter(n.number+","+n.password);
})
}
}
后台服务器代码
def test_ajax2(request):
if request.is_ajax() and request.method =="POST":
d = request.POST.get("data")//获得前端的请求数据{ "data":"dat" }
sql = 'select * from adminer;'
result, count = do_sql(sql)
return JsonResponse({"status":"success","msg":result})//返回JSON到前端