ajax在js中和jQuery中的用法实例详解

 更新时间:2021年08月22日 11:08:37   作者:_Battle  
Ajax被认为是(Asynchronous(异步) JavaScript And Xml的缩写),现在允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax,下面这篇文章主要给大家介绍了关于ajax在js中和jQuery中的用法,需要的朋友可以参考下

原生 JS

怎么发送一个 get 请求

  • 创建一个 ajax 对象
    • var xhr = new XMLHttpRequest()
  • 设置请求方式和请求地址[,是否异步]
    • xhr.open('get', '/ajax'[, true or fasle])
  • 准备接受请求体
    • xhr.onload = function () { console.log(xhr.responseText) }
    • xhr.onreadystatechange = function () { if (xhr.readyState === 4) { console.log( xhr.responseText ) } }
  • 发送请求
    • xhr.send(null)
var xhr = new XMLHttpRequest()
xhr.open('get', '/ajax')
xhr.onload = function () {
  console.log(xhr.responseText)
}
xhr.send(null)

怎么发送一个 post 请求

  • 创建一个 ajax 对象
    • var xhr = new XMLHttpRequest()
  • 设置请求方式和请求地址[,是否异步]
    • xhr.open('post', '/ajax'[, true or fasle])
  • 准备接受请求体
    • xhr.onload = function () { console.log(xhr.responseText) }
    • xhr.onreadystatechange = function () { if (xhr.readyState === 4) { console.log( xhr.responseText ) } }
  • 发送请求
    • xhr.send(null)
var xhr = new XMLHttpRequest()
xhr.open('post', '/ajax')
xhr.onload = function () {
  console.log(xhr.responseText)
}
xhr.send(null)

发送一个带有参数的 get 请求

  • var xhr = new XMLHttpRequest
  • 直接在请求地址后面拼接参数,? 开始,key=value 的形式,多个参数之间以 &  分割
    • xhr.open('get', '/ajax?name=Jack&age=18')
  • xhr.onload = function () { console.log( xhr.responseText ) }
  • xhr.send()

发送一个带有参数的 post 请求

var xhr = new XMLHttpRequest

不需要在请求地址后面拼接任何内容

  • xhr.open('post', '/ajax')

xhr.onload = function () { console.log( xhr.responseText ) }

post 方式携带参数是直接写在 xhr.send() 后面的 () 里面

  • 自己收集数据 key=value
    • 自己设置请求头
    • xhr.setRequestHeadr('content-type', 'application/x-www-form-urlencoded')
  • FormData 收集数据
    • 什么都不需要,只要使用 FormData 收集数据就可以了
    • var fd = new FormData(DOM)
    • 在发送请求的时候只要把 fd 带过去就行了
var xhr = new XMLHttpRequest()
xhr.open('post', '/ajax')
xhr.onload = function () {
  console.log(xhr.responseText)
}
xhr.setRequestHeadr('content-type', 'application/x-www-form-urlencoded')
xhr.send('key=value&key=value')
var fd = new FormData(document.querySelector('form'))
var xhr = new XMLHttpRequest()
xhr.open('post', '/ajax')
xhr.onload = function () {
  console.log(xhr.responseText)
}
xhr.send(fd)

jQuery

$.get 几个参数,怎么使用

地址

  • 参数 key=value 或者 { name: 'Jack' }
  • 成功的回调函数
  • 预期后台返回的数据类型
    • text : 什么都不做,直接给你结果
    • json : 必定会执行一步 JSON.parse()

$.post 几个参数,怎么使用

  • 地址
  • 参数 key=value 或者 { name: 'Jack' }, 不能发送 FormData
  • 成功的回调函数
  • 预期后台返回的数据类型

$.ajax 几个参数,怎么使用

  • 就是配置项 options
    • url: 请求地址
    • method/type:  请求方式
    • data: 携带参数
    • dataType: 后台返回的数据类型天
    • success: 成功的回掉
    • error: 失败的回调
    • contentType:  发送 FormData 的时候使用的
    • processData: 发送 FormData 的时候使用的

JSONP

$.ajax 怎么发送 jaonp 请求

  • dataType 必须是 jsonp
  • 方式必须是 get
  • jsonp: 根据后台来决定
$.ajax({
  url: '/jsonp',
  data: {},
  dataType: 'jsonp',
  jsonp: 'callback',
  success (res) {
    console.log(res)
  }
})

总结

到此这篇关于ajax在js中和jQuery中的用法的文章就介绍到这了,更多相关ajax在js中和jQuery的用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • js获取会话框prompt的返回值的方法

    js获取会话框prompt的返回值的方法

    这篇文章主要介绍了js获取会话框prompt的返回值的方法,通过一个简单的密码判断实例分析了js获取会话框prompt返回值的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-01-01
  • JS禁用浏览器退格键实现思路及代码

    JS禁用浏览器退格键实现思路及代码

    关于浏览器退格键的禁用,可行的方法有很多,在本文将为大家详细介绍下在js中时如何做到的,有需求的各位可以参考下
    2013-10-10
  • 前端无感刷新token的实现步骤

    前端无感刷新token的实现步骤

    这篇文章主要给大家介绍了关于前端无感刷新token的实现步骤,Axios无感知刷新令牌技术通过设置请求拦截器和刷新逻辑,确保API请求不会因令牌过期而中断,使用访问令牌和刷新令牌实现自动刷新,需要的朋友可以参考下
    2024-11-11
  • 用javascript实现读取txt文档的脚本

    用javascript实现读取txt文档的脚本

    用javascript实现读取txt文档的脚本...
    2007-07-07
  • js多功能分页组件layPage使用方法详解

    js多功能分页组件layPage使用方法详解

    这篇文章主要介绍了js多功能分页组件layPage的适用方法,layPage是一款多功能的js分页组件,即适用于异步分页,又可用于传统的整页刷新跳页,功能多样,想要了解的朋友可以参考下文进行学习
    2016-05-05
  • 一文解析JavaScript模块构建的三种方式

    一文解析JavaScript模块构建的三种方式

    在现代Web开发中,JavaScript库的构建和打包是一个至关重要的环节,不同的构建方式可以影响到库的性能、可维护性和适用性,本文将深入剖析三种主要的JavaScript模块构建方式:CommonJS、ES模块和AMD,我们将深入探讨它们的工作原理、适用场景以及示例代码
    2023-08-08
  • es6函数之尾递归用法实例分析

    es6函数之尾递归用法实例分析

    这篇文章主要介绍了es6函数之尾递归用法,结合实例形式分析了es6函数尾递归原理、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • JS函数节流和函数防抖问题分析

    JS函数节流和函数防抖问题分析

    这篇文章主要介绍了JS函数节流和函数防抖问题分析,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-12-12
  • ES6中Symbol、Set和Map用法详解

    ES6中Symbol、Set和Map用法详解

    这篇文章主要介绍了ES6中Symbol、Set和Map用法,结合实例形式详细分析了ES6中Symbol、Set和Map的功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-08-08
  • layer设置maxWidth及maxHeight解决方案

    layer设置maxWidth及maxHeight解决方案

    这篇文章主要介绍了layer设置maxWidth及maxHeight解决方案,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07

最新评论