关于原生AJAX和jQueryAJAX的编程
1.回顾传统Ajax开发步骤
①:创建xmlHttpRequest对象
var xmlHttp = creatHttpRequest();
②:绑定回调函数
xmlHttp.onreadystatechange = function(){……}
③:建立连接
xmlHttp.open(“GET”,”url”);
④:发送数据
xmlHttp.send(null) //GET请求
如果是POST请求需要设置编码格式:
xmlHttp.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
xmlHttp.send(“key=value?key=value”)
⑤:书写回调函数
if(readyState == 4){
if(status ==200){
……
//操作xmlHttp.responseText主要针对返回HTML片段和json
//操作xmlHttp.responseXML主要针对返回XML片段。
}
}
2.jQuery的Ajax开发
jQuery提供了最底层的Ajax调用方法:$.ajax
$.ajax{
type:”POST”
url: “some.php”
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
}
// 因为使用比较繁琐,所以在实际开发中,应用很少
为了简化Ajax开发,jQuery提供了对$.ajax()进一步的封装方法$load、$get、$post。这三个方法不支持跨域,$getJSON、$getScript支持跨域。
①:load方法
load方法是jQuery中最为简单和常用的Ajax方法,处理HTML片段此方法最为合适。
语法
$("jquery对象").load("url","data") ;
url:Ajax访问服务器地址
data:请求参数
返回内容HTML片段 ,自动放入$("jquery对象")innerHTML 中(如果返回的数据需要处理,我们可以使用get或者post)
load()方法的传递参数根据参数data来自动自定。如过没有参数的传递,采用GET方式传递,否则采用POST方式
比如校验用户名是否存在
$(function(){
// 为用户名添加离焦事件
$("input[name='username']").blur(function(){
// 获得当前输入 username
var username = $(this).val();
// 提交Ajax校验
$("#info").load("/Ajax/checkUsername" , {'username': username});
});
});
<form>
<!-- div display:block 自动换行效果 span display:inline; 不会换行 -->
用户名 <input type="text" name="username" /> <span id="info"></span> <br/>
密码 <input type="password" name="password"/><br/>
<input type="submit" value="注册" />
</form>
②:get方法和post方法
语法 :
$.get/$.post("url","parameter",function(data){...});
url Ajax访问服务器地址
parameter 代表请求参数
function 回调函数 data 代表从服务器返回数据内容
这里data代表各种数据内容 : HTML片段、JSON、XML
如果传递参数给服务器使用 $.post , 不需要传参数 可以使用 $.get
关于原生AJAX和jQueryAJAX的编程的更多相关文章
- 原生Ajax和jqueryAjax写法
原生写法: $('#send').click(function(){ //请求的5个阶段,对应readyState的值 //0: 未初始化,send方法未调用: //1: 正在发送请求,send方法已 ...
- js原生Ajax 的封装和原理
原理及概念 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是一种用于创建快速动态网页的技术. 动态网页:是指可以通过服务器语言结合数 ...
- 原生Ajax
使用原生Ajax 验证用户名是否被注册 创建出注册信息: <h1>注册信息</h1><input type="text" name="txt ...
- JS原生ajax与Jquery插件ajax深入学习
序言: 近来随着项目的上线实施,稍微有点空闲,闲暇之时偶然发现之前写的关于javascript原生xmlHttpRequest ajax方法以及后来jquery插件ajax方法,于是就行了一些总结,因 ...
- 原生Ajax 和Jq Ajax
前言:这次介绍的是利用ajax与后台进行数据交换的小例子,所以demo必须通过服务器来打开.服务器环境非常好搭建,从网上下载wamp或xampp,一步步安装就ok,然后再把写好的页面放在服务器中指定的 ...
- 手写原生ajax
关于手写原生ajax重要不重要,各位道友自己揣摩吧, 本着学习才能进步,分享大家共同受益,自己也在自己博客里写一下 function createXMLHTTPRequest() { //1.创建XM ...
- 浅谈AJAX的基本原理和原生AJAX的基础用法
一.什么是AJAX? AJAX,即"Asynchronous Javascript And XML",翻译为异步的JavaScript和XML,是一种创建交互式网页应用的网页开发技 ...
- python_way day21 Django文件上传Form方式提交,原生Ajax提交字符处啊,Django文件上传之原生Ajax方式、jQuery Ajax方式、iframe方式,Django验证码,抽屉示例,
python_way day21 1.Django文件上传至Form方式 2.原生Ajax文件上传提交表单 使用原生Ajax好处:不依赖jquery,在发送一个很小的文件或者字符串的时候就可以用原生A ...
- [译]脱离jQuery,使用原生Ajax
脱离jQuery,使用原生Ajax 标签: Ajax translate 英文出处:<A Guide to Vanilla Ajax Without jQuery> 翻译: 刘健超 J.c ...
随机推荐
- 【译】 AWK教程指南 7AWK应用实例
本节将示范一个统计上班到达时间及迟到次数的程序. 这程序每日被执行时将读入两个数据文件: * 员工当日到班时间的数据文件 ( 如下列的 arr.dat ) * 存放员工当月迟到累计次数的文件 当程序执 ...
- bzoj 3123 [Sdoi2013]森林(主席树,lca,启发式合并)
Description Input 第一行包含一个正整数testcase,表示当前测试数据的测试点编号.保证1≤testcase≤20. 第二行包含三个整数N,M,T,分别表示节点数.初始边数.操作数 ...
- HDFS体系结构:(Distributed File System)
分布式系统的大概图 服务器越来越多,客户端对服务器的管理就会越来越复杂,客户端如果是我们用户,就要去记住大量的ip. 对用户而言访问透明的就是分布式文件系统. 分布式文件系统最大的特点:数据存储在多台 ...
- Win7 NFS 设置详解 | X-Space
Win7 NFS 设置详解 | X-Space Win7 NFS 设置详解
- Hadoop MapReduce概念学习系列之mr的Shuffle(二十二)
Shuffle是非常非常非常重要.搞mr,必须熟烂于心. 因为,分区,分组,排序,,,都是在Shuffle里完成.
- [Objective-c 基础 - 2.1] 封装
A.封装内部细节,根据需求暴露方法 #import <Foundation/Foundation.h> @interface Student : NSObject { int age; } ...
- Web 应用的安全性
Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分.用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统.用户授权 ...
- Javascript注意事项四【提高循环性能的策略】
for(var i = item.length;i--){ process(item[i]); } 1.通过倒叙循环 2.最小化属性查询 3.尽量不要使用函数迭代(forEach)
- Idea的Git使用
在使用Git来pull和push代码的时候会发生冲突的情况,如果处理不当则会出现无法pull和push代码的情况.所以这个是十分有必要注意的. 那么我来说几句自己的总结吧: 1.先看下idea的Git ...
- Oracle- UPDATE FROM讲解
在表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.像sql server提供了update的from 子句,可以将要更新的表与其它的数据源连接起来.虽然只能对一个表进行更新,但是通 ...