Django-ajax前后台数据传递

ajax参数常用参数

jQuery 底层 AJAX 实现,简单易用的高层实现见 $.get, $.post 等。后端返回的数据会被当做ajax的success回调函数中的data参数,回调函数success的status的成功时返回值如果打印出来是success,获取值失败的时候什么都不出来,不太清楚是什么原因

参数描述
url 一个用来包含发送请求的URL字符串,前后端数据交互,一般都需要
dataType 预期服务器返回的数据类型,如果不指定jQuery会自动根据HTTP包MIME信息来智能判断 ,可用值有:"xml","json","text"等
data 发送到服务器的数据,将自动转换为请求字符串
typeajax的请求方式,有get和post,默认为get,注意:其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持
success请求成功后回调函数。这个方法有两个参数:服务器返回数据data,返回状态status
1. get方式

此例传输的是json数据

js代码,从后端获取info的值


$.ajax({
            url:"/login/",
            dataType:"json",
            success: function (data) {
                alert(data["info"]);
            }


views.py,将json数据传送给前端

def login(request):
    if request.is_ajax():
        response = JsonResponse({"info":"验证码发送成功"}
        return response

此例传输的是文本数据,和json数据差不多,只是在js里面数据类型改成text,视图函数里面jsonresponse换成httpresponse

js代码

$.ajax({
            url:"/login/",
            dataType:"text",
            success: function (data) {
            console.log(data)
            }

views.py

def login(request):
    if request.is_ajax():
        response = HttpResponse("验证码发送成功")
        return response
2. post方式

js代码,post请求方式给后端 传数据的时候要以字典的形式发送

$.ajax({
            url:"/login/",
            data : {host:"1.1.1.1"},
            dataType:"json",
            success: function (data) {
                alert(data["host"]);
            }

views.py

def login(request):
    if request.is_ajax():
       # 直接获取所有的post请求数据
       data = request.POST
       # 获取其中的某个键的值
       host = request.POST.get("host")
       print(data)
       print(host)
       # 将前端传来的数据再次传回前端,只是为了测试
       response = JsonResponse({"host":host} 
       return response

第一次发表博客,如有错误或者建议请指出,谢谢大家的观看


  • 6
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值