`
peihong-ph
  • 浏览: 21249 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Ajax的使用

阅读更多
ajax的使用步骤:
1.需要通过JavaScript创建XMLHttpRequest对象  所有发送的ajax请求和接受服务器传回来的参数都要通过XMLHttpRequest对象来操作
function createXmlHttp(){
if(window.XMLHttpRequest){
//针对firefox,mozillar,opera,safari,IE7,IE8
xmlHttp = new XMLHttpRequest();
//针对某些特定版本的mozillar浏览器的bug进行修正
if(xmlHttp.overrideMimeType){
xmlHttp.overrideMimeType("text/xml");
}
}else  if(window.ActiveXObject){
//针对IE6,IE5.5,IE5
try{
xmlHttp=new ActiveXObject("MSXML2.XMLHTTP");
}catch(e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
alert("不能创建XmlHttpRequest");
}
}
}
}

2.利用已创建的XMLHttpRequest对象发送请求给服务器
请求是:servlet
通过XMLHttpRequest对象的open(first,second,third)方法设置要发送的请求
First是第一个参数指的是url提交的方式为get或者是post
第二个参数Second指的是发送请求的url 一般为servlet的url-pattern或者jsp页面的
第三个参数为请求的方式为同步还是异步 true代表异步请求
3.利用XMLHttpRequest的onreadystatechange监听XMLHttpRequest对象中readystate的状态 当状态发生改变的时候调用回调函数去讲返回的数据写到页面指定的地方  这里的回调函数不能加上();仅仅是回调函数名即可
4.利用XMLHttpRequest中的send()方法发送请求给服务器
  注意:send(null);null代表Firefox和IE都支持
5.需要注意的地方是:回调函数只有在readystate状态为4代表数据接受成功才去操作
此时XMLHttpRequest里面的status状态为200时代表数据接受无误 其他会出现404或者500的错误 返回的数据全部保存到XMLHttpRequest中的responseText中 最后可以将获取的返回数据写到页面指定的位置 实现局部刷新
Status的状态码及含义:
Http状态码 含义
200 请求成功
202 请求被接收,但处理未完成
404 请求资源未找到
500 内部服务器错误

ReadyState的状态值及含义
readyState值 含义
0 表示XMLHttpRequest对象已建立,但还未初始化,这时尚未调用open方法
1 表示open方法已经调用,但未调用send方法(已创建,未发送)
2 表示send方法已经调用,其他数据未知
3 表示请求已经成功发送,正在接受数据
4 表示数据已经成功接收。


以上是get的提交方式的想法 如果是post的提交方式和get方式的不同之处
1. 传参形式不同 get方式通过url后面加?再加传的参数 而post方式参数通过send(参数)传递
2. Post方式在send()之前要加上一句话xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
其他都一样
注意:url的路径问题 一般是servlet对应的url-pattern或者是jsp页面 以及到底包含不包含参数

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics