521源码-免费源码下载-免费学习教程-常见的原生js封装ajax

2024-05-28 09:20

本文主要是介绍521源码-免费源码下载-免费学习教程-常见的原生js封装ajax,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

更多 网站源码 学习教程 游戏源码,请点击👉-521源码-👈获取最新资源

请看以下案例:

function ajax(options) {var xhr = null;var type = 'GET';var params = formsParams(options.data);if(typeof options.type != 'undefined'){type = options.type.toUpperCase();}//创建对象if (window.XMLHttpRequest) {xhr = new XMLHttpRequest();} else {xhr = new ActiveXObject("Microsoft.XMLHTTP");}if (typeof options.async == "undefined") {options.async = true;}// 处理请求成功的回调函数xhr.onload = function(){if (xhr.status >= 200 && xhr.status < 300) {if (typeof options.datatype == "undefined" || options.datatype == "json") {if(typeof options.success === 'function'){options.success(JSON.parse(xhr.responseText));}} else {if(typeof options.success === 'function'){options.success(xhr.responseText);}}} else {if(typeof options.error === 'function'){options.error(xhr.statusText);}}}// 处理请求错误的回调函数xhr.onerror = function() {if(typeof options.error === 'function'){options.error(xhr.statusText);}}// 设置请求头部if (options.headers) {for (var header in options.headers) {xhr.setRequestHeader(header, options.headers[header]);}}// 设置请求方法、URL、是否异步、发送请求if (type == "GET") {xhr.open(type, options.url + "?" + params, options.async);xhr.send(null);} else if (type == "POST") {xhr.open(type, options.url, options.async);xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");xhr.send(params);}function formsParams(data) {var arr = [];for (var prop in data) {arr.push(prop + "=" + data[prop]);}return arr.join("&");}
}// 使用
ajax({url: "api.php",// 请求地址type: "POST",// 请求方式async: true,// 同步:false,异步:true,默认为truedatatype: "json",// 返回数据的格式,"json","text",默认为jsonheaders: {},// 设置请求头部,{"token": "123456"}data: {// post数据code: "s2sdd",link: location.href},success: function (res) {// 处理请求成功console.log(res);},error: function (res) {// 处理请求错误console.log(res);}
})

这篇关于521源码-免费源码下载-免费学习教程-常见的原生js封装ajax的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1010162

相关文章

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

java中long的一些常见用法

《java中long的一些常见用法》在Java中,long是一种基本数据类型,用于表示长整型数值,接下来通过本文给大家介绍java中long的一些常见用法,感兴趣的朋友一起看看吧... 在Java中,long是一种基本数据类型,用于表示长整型数值。它的取值范围比int更大,从-922337203685477

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

Java中常见队列举例详解(非线程安全)

《Java中常见队列举例详解(非线程安全)》队列用于模拟队列这种数据结构,队列通常是指先进先出的容器,:本文主要介绍Java中常见队列(非线程安全)的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一.队列定义 二.常见接口 三.常见实现类3.1 ArrayDeque3.1.1 实现原理3.1.2

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技