Ajax

Posted jnhnsnow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ajax相关的知识,希望对你有一定的参考价值。

  向服务器发请求的方式:

      - 浏览器地址栏 get

      - form表单 get / post

      - a标签 get

      - ajax  get / post:

          - 1.异步

          - 2. 局部刷新

  基于jquery简单实现Ajax

<button>ajax_button</button>
<script>
    $(button).click(function () {
        $.ajax(
            {
                url:{% url "app01:index" %},
                type:get, //post
                //data:{ }, //键值形式  get请求在 request.GET    post为request.POST
                success:function (data) {
                    alert(data)
                }
            }
        )
    })
</script>

  \ post    data     ‘csrfmiddlewaretoken‘:$(‘[name="csrfmiddlewaretoken"]‘).val(),

  \ js:  反序列化 JSON.parse(data);

  \  #校验登录思路

后端
import json
res = {‘user‘:None,‘msg‘:None} if 登陆成功: res[‘user‘] = user else: res[‘msg‘] = "登陆失败" return HttpResponse(json.dumps(res))

#也可以 from django.http import JsonRsponse
    return JsonResponse (res) #前端不需要反序列化!

     
前端
$(".log_btn").click(function () { $.ajax({ url:"{% url ‘app01:log‘ %}", data:{ ‘user‘:$(".user").val(), ‘pwd‘:$(".pwd").val(), ‘csrfmiddlewaretoken‘:$(‘[name="csrfmiddlewaretoken"]‘).val(), }, type:‘post‘, success:function (data) { var data1 = JSON.parse(data); //反序列化 if(data1.user){ location.href = ‘https://www.baidu.com‘ }else {$(".error").html(data1.msg).css({‘color‘:‘red‘})} } }) })




 

以上是关于Ajax的主要内容,如果未能解决你的问题,请参考以下文章

Javascript代码片段在drupal中不起作用

前端面试题之手写promise

Ajax 片段元标记 - Googlebot 未读取页面内容

执行AJAX返回HTML片段中的JavaScript脚本

javascript AJAX片段

Spring MVC 3.2 Thymeleaf Ajax 片段