Jquery ajax书写方法代码实例解析


Posted in jQuery onJune 12, 2020

Ajax在前端的应用极其广泛,因此,我们有必要对其进行总结,以方便后期的使用。

AJAX优点:

可以异步请求服务器的数据,实现页面数据的实时动态加载, 在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。

jquery在全局对象jquery(也就是$)绑定了ajax()函数,可以处理Ajax请求,ajax常用的配置选项有:

  • async 是否异步执行,默认为True,千万不要指定为False
  • method 发送的Method,缺省为“GET”,可指定为‘POST','PUT','DELETE', 单词字母必须大写
  • contentType 发送POST请求的格式,默认值为'application/x-www-form-urlencoded; charset=UTF-8',也可以指定为‘text/plain' 'application/json'
  • data 发送给后端的数据,可以是字符串、数组或对象。如果是GET请求,data将被转换成query附加到url上;如果是POST请求,根据contentType把data序列化成合适的格式
  • dataType 接收的数据格式,可以指定为'html' 'xml' 'json' 'text'等,缺省情况下根据响应的Content-Type猜测
  • headers 发送的额外的HTTP请求头,必须是一个Object

语法一:$.ajax({name:value, name:value, ...})

# 登录js代码
 $(".form-login").submit(function (e) {
     e.preventDefault();
     mobile = $("#mobile").val();
     pwd = $("#password").val();
     var data = {
       mobile: mobile,
       pwd: pwd
     };
     $.ajax({
       url: "/api/***",
       type: "POST",
       data: JSON.stringify(data),
       contentType: "application/json",
       dataType: "json",
       headers: {"X-CSRFToken": getCookie('csrf_token')},
       success: function (resp) {
        if (resp.error == 0){
           // resp 是后端通过json.dumps()返回的json格式数据:res={"error":0, "errmsg":"登录失败"}
           // resp = json.dumps(res)
           // 请求成功,跳转页面
           location.href = '/'
         }
         else {
           alert(resp.errmsg)
         }
       }
     })
  })

语法二:$.get(URL, params, function(resp, status_code){})

URL必需参数;

params可选参数,params={key:value...}, 会以?key=value&key=value...的方式自动添加到URL后面

function(resp, status_code) 可选参数,是请求成功后所执行的函数,resp是后台返回的数据; states_code是自动生成的响应状态码,可缺省

# 更新首页房源展示信息
 var params = {
     aid: 0,
     sd: "2018-2-20",
     ed: "2019-2-29",
     page: 1
   };
 $.get("/api/v1_0/houses", params, function(resp){
     if (resp.error == 0){
       $(".house-list").html(template("house-list-tmpl", {houses:resp.data.houses}));
     }
     else {
       $(".house-list").append(template("house-list-tmpl", {houses: resp.data.houses}));
     }
   })

语法三:$.post(URL, data, function(resp, states_code){})

URL必选参数;

data 可选参数 连同请求发送的数据;

function(resp, status_code) 可选参数,是请求成功后所执行的函数,resp是后台返回的数据; states_code是自动生成的响应状态码,可缺省

$("button").click(function(){
  $.post("/try/ajax/demo_test_post.php",
  {
    name:"mjy",
    url:"https://cnblogs.com/We612/"
  },
    function(data,status){
      alert("数据: \n" + data + "\n状态: " + status);
  });
});

说明:

$.GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。

$.POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据。

实际应用中多用到语法一 语法二, 语法三较少

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jquery实现全选、全不选以及单选功能
Mar 23 jQuery
jQuery日程管理控件glDatePicker用法详解
Mar 29 jQuery
jQuery+Ajax实现用户名重名实时检测
Jun 01 jQuery
jQuery常用选择器详解
Jul 17 jQuery
jQuery EasyUI结合zTree树形结构制作web页面
Sep 01 jQuery
详解jquery插件jquery.viewport.js学习使用方法
Sep 08 jQuery
解决jquery appaend元素中id绑定事件失效的问题
Sep 12 jQuery
jQuery实现简单日期格式化功能示例
Sep 19 jQuery
基于jQuery中ajax的相关方法汇总(必看篇)
Nov 08 jQuery
javascript异步处理与Jquery deferred对象用法总结
Jun 04 jQuery
JQuery实现折叠式菜单的详细代码
Jun 03 jQuery
jquery自定义组件实例详解
Dec 31 jQuery
基于ajax及jQuery实现局部刷新过程解析
Sep 12 #jQuery
jquery.validate自定义验证用法实例分析【成功提示与择要提示】
Jun 06 #jQuery
Jquery滑动门/tab切换实现方法完整示例
Jun 05 #jQuery
JQuery实现折叠式菜单的详细代码
Jun 03 #jQuery
深入分析jQuery.one() 函数
Jun 03 #jQuery
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
Jun 02 #jQuery
jQuery实现倒计时功能完整示例
Jun 01 #jQuery
You might like
有关JSON以及JSON在PHP中的应用
2010/04/09 PHP
用PHP实现弹出消息提示框的两种方法
2013/12/17 PHP
关于PHP的curl开启问题探讨
2014/04/08 PHP
PHP array_shift()用法实例分析
2019/01/07 PHP
跨浏览器的 mouseenter mouseleave 以及 compareDocumentPosition的使用说明
2010/05/04 Javascript
浏览器脚本兼容 文本框中,回车键触发事件的兼容
2010/06/21 Javascript
用jquery实现等比例缩放图片效果插件
2010/07/24 Javascript
js点击更换背景颜色或图片的实例代码
2013/06/25 Javascript
jquery prop的使用介绍及与attr的区别
2013/12/19 Javascript
js实现ArrayList功能附实例代码
2014/10/29 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
angular2中使用第三方js库的实例
2018/02/26 Javascript
nodejs简单读写excel内容的方法示例
2018/03/16 NodeJs
安装vue-cli的简易过程
2018/05/22 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
Python使用metaclass实现Singleton模式的方法
2015/05/05 Python
Python中标准库OS的常用方法总结大全
2017/07/19 Python
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
pandas 两列时间相减换算为秒的方法
2018/04/20 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
2018/06/14 Python
python调用c++ ctype list传数组或者返回数组的方法
2019/02/13 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
在HTML5 Canvas中放入图片和保存为图片的方法
2014/05/03 HTML / CSS
英国儿童设计师服装的领先零售商:Base
2019/03/17 全球购物
豪华复古化妆:Besame Cosmetics
2019/09/06 全球购物
监察建议书范文
2014/03/12 职场文书
学生个人自我鉴定
2014/03/26 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
2014年会计个人工作总结
2014/11/24 职场文书
解析mybatis-plus中的resultMap简单使用
2021/11/23 Java/Android
SpringCloud中分析讲解Feign组件添加请求头有哪些坑梳理
2022/06/21 Java/Android