Ajax_04之jQuery中封装的Ajax函数
1、PHP中json_encode编码规则:
PHP索引数组编码为JSON:[...]
PHP关联数组编码为JSON:{...}
2、jQuery中AJAX封装函数之load:
①使用:$('选择器').load(url,[data],[fn]);
$('选择器').load(url);
②含义作用:创建XHR对象,向指定的URL发起异步请求,请求参数为data,如果响应成功,自动调用指定回调函数fn,将响应主体数据(必须是HTML片段),替换为当前选定元素的innerHTML,已有内容会被覆盖;
3、jQuery中AJAX封装函数之$.get:
①使用:$.get(url,[data],[fn]);
②含义作用:创建XHR对象,向指定的URL发起异步GET请求,请求参数为data(形如k=v&k=v或{k:v,k:v}),如果响应成功,自动调用指定回调函数fn(必须在此回调函数中对响应数据进行处理——doResponse);
4、jQuery中AJAX封装函数之$.post:
①使用:$.post(url,data,[fn]);
②含义作用:创建XHR对象,向指定URL发起异步POST请求,请求参数为data(形如k=v&k=v或{k:v,k:v}),追加在请求主体中,如果响应成功,自动调用指定回调函数fn(必须在此回调函数中对响应数据进行处理——doResponse(txt,msg,xhr););
③表单序列化:Serialize,把表单中所有具备name属性的输入域及值拼接为“k1=v1&k2=v2”形式的字符串,可直接用于HTTP请求消息(var data=$("#formId").serialize(););
5、jQuery中AJAX封装函数之$.getJSON:
①使用:$.getJSON(url,[data],[fn]);
②含义作用:创建XHR对象,向指定URL发起异步GET请求,请求参数为data(形如k=v&k=v或{k:v,k:v}),追加在URL后,如果响应成功,自动调用指定回调函数fn(必须在此回调函数中对响应数据进行处理——doResponse(txt,msg,xhr););
*(该函数要求响应数据必须是application/json类型,会自动调用JSON.parse(xhr.responseText)加以解析);
6、jQuery中AJAX封装函数之$.getScript:
①使用:$.getScript(url,[data],[fn]);
$.getScript(url);
②含义作用:创建XHR对象,向指定URL发起异步GET请求,请求参数为data(形如k=v&k=v或{k:v,k:v}),追加在URL后,如果响应成功,自动调用指定回调函数fn;
*(该函数要求响应数据必须是application/javascript类型,会自动调用eval(xhr.responseText)加以执行);
7、jQuery中AJAX封装函数之$.ajax:
①使用:
$.ajax({
type:'GET',//POST/PUT/DELETE/HEAD
url:'x.php',
data:'k=v&k=v', //{k:v}请求数据
beforeSend:function(){}, //请求发送前的回调
success:function(){}, //成功响应的回调
error:function(){}, //失败响应的回调
complete:function(){} //响应完成的回调
});
②对应原生AJAX代码:
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
if(xhr.readyState===4){
if(xhr.status===200){success();}
else{error();}
complete();
}
}
xhr.open();
beforeSend();
xhr.send();
8、总结:
①$('选择器').load(url);——只接收html响应;
②$.get(url,data,fn);——取决于响应消息声明的内容类型,若声明为application/json,会自动调用JSON.parse();若声明为application/javascript,会自动调用eval();若声明为text/plain等,则不会自动执行;
③$.post(url,data,fn);
④$.getJSON(url,data,fn);——只接收json响应,不论响应消息是什么类型,都会自动调用JSON.parse()把xhr.responseText进行解析得到JS对象;
⑤$.getScript(url);——只接收script响应,不论响应消息什么类型,都会自动调用eval把xhr.responseText进行执行;
Ajax_04之jQuery中封装的Ajax函数的更多相关文章
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 转载 : Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结 投稿:jingxian 字体:[增加 减小] 类型:转载 时间:2013-11-14我要评论 本文是 ...
- jquery中attr()与prop()函数用法实例详解(附用法区别)
本文实例讲述了jQuery中attr()与prop()函数用法.分享给大家供大家参考,具体如下: 一.jQuery的attr()方法 jquery中用attr()方法来获取和设置元素属性,attr是a ...
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON(),$.getScript(),$.load()的用法总结
参考文档 : https://blog.csdn.net/jiandanokok/article/details/48809717 本文是对Jquery中$.get(),$.post(),$.aja ...
- main.js中封装全局登录函数
1. 在 main.js 中封装全局登录函数 通过 vue 对象的原型扩展,可以扩展一个函数,这样这个函数就可以在每一个界面通过类似指向对象的方式,去访问这个函数. 如下是 main.js 扩展的函数 ...
- JQuery中bind和unbind函数与onclick绑定事件区分
JQuery中bind和unbind函数转载: https://blog.csdn.net/liucheng417/article/details/51131982 页面代码: <body& ...
- jquery 中 html与text函数的区别
jquery 中 html与text函数的区别 共同点:它们都能讲函数中的参数渲染到页面中: 异同点: text() 只是简单的讲参数的内容写入到页面中: html() 会根据参数的值,判断是否字体符 ...
- (转)Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
详细解读Jquery各Ajax函数: $.get(),$.post(),$.ajax(),$.getJSON() 一,$.get(url,[data],[callback]) 说明:url为请求地址, ...
随机推荐
- 1.Linux常用命令
命令名称:ls 格式: ls [-选项] [参数] 注:中括号表示可选 命令路径:/bin/ls 功能描述:显示信息 例如: 选项 -a 显示所有的文件,包括隐藏文件,(以 . 开头的文件) -l ...
- BZOJ 2342 & manachar+最优性剪枝
题意: 求最长回文串,串的两边都是回文串. Solution: manachar预处理然后暴力找... Code: #include <iostream> #include <cst ...
- css 深入浅出定位
前面我们简单的了解了盒子模型,这里我们就不复习了哈.有什么不清楚的去看我的上一篇博文.其实说定位之前大家一定要先理解一个东西:文档流,那什么是文档流?和文档有关系吗?是dom树吗? 这一对的问题我们应 ...
- Log4j按级别输出到不同文件
log4j.properties 文件: log4j.logger.net.sf.hibernate.cache=debug log4j.rootLogger = error,portal_log,s ...
- ios设备中openGL所支持的最大纹理尺寸
这几天碰到一个在iphone4上显示图片未黑色矩形的bug,在其他机器上都正常 最后发现是图片打包尺寸的关系,iphone4无法读取2048以上大小的单个图片,所以其中的图片都显示成了黑色,希望对碰到 ...
- 基于TCP协议的socket通信
一.服务器端 1.创建serverSocket,即服务器端的socket,绑定指定的端口,并侦听此端口 ServerSocket server = new ServerSocket(8888); 2. ...
- SQL执行效率2-执行计划
以下语句可以进行SQL 语句执行时间分析,两个Go之间就是SQL查询语句 use Work--数据库名 go set statistics profile on set statistics io o ...
- JS的面向对象编程一:封装
Javascript是一种基于对象的语言,但它又没有class.这在很长的一段时间里,对JS的面向对象编程的概念很模糊,在编程的时候时有用到,但要说个所以然,却说不出来,所以看了些书,又在网上查了些资 ...
- VIM配置
Linux下的编辑器以vim和emacs为主流,一个编辑器之神,一个是神的编辑器. 本文以主要介绍如何在linux下以vim为基础搭建一个比较顺手的代码编辑器. 有两种比较流行的方式: 自动安装 手动 ...
- android——数据库版本升/降级问题
数据库版本升级 在开发android应用程序的时候,一般由于在我们开发的时候我们不知道以后会后什么新功能,也有可能增加业务逻辑(也就是更新),可想而知我们原来的数据库结构可能不适用已更新的应用,那么应 ...