ajax的使用

ajax参数常用参数

参数 描述

  • url 一个用来包含发送请求的URL字符串,前后端数据交互,一般都需要
  • dataType 预期服务器返回的数据类型,如果不指定jQuery会自动根据HTTP包MIME信息来智能判断 ,可用值有:"xml","json","text"等
  • data 发送到服务器的数据,将自动转换为请求字符串
  • type ajax的请求方式,有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




原文地址:https://www.cnblogs.com/raisok/p/15148980.html