您的位置:首页 > Web前端 > JavaScript

(未艾原创)当当当当!!!真正的第一篇博文!!Ajax发送请求及处理。(我在新浪博客的第一篇文章)

2017-01-12 04:46 190 查看
啊 对于Ajax最开始学习的时候 我总是觉得他有一种神秘又深奥复杂的感觉。所以始终学不会。

这起源于之前我在一个QQ群里见到了一个大神群主 他的名字就叫Ajax·车

是车。。。不是扯淡的扯。。。

所以我一直觉得这玩意好牛逼啊 刚刚就亲手把Ajax里面的源生dom写法写了一遍。算是加深自己印象 再学一学。

因为是我用Txt写的 所以如果有错误的话。你TMD的来咬我啊?啦啦啦!

——未艾。

//了解XMLHttpRequest对象的方法和属性。

//!!!!!!!!!!!!!!!!!!!!发送GET请求及处理文本方式相应。
//1.创建XMLHttpRequest对象。通过window.XMLHttpRequest的返回值判断创建XMLHttpRequest对象的方式。
//2.设置回调函数。通过onreadystatechange属性设置回调函数。其中回调函数需要自定义。
//3.初始化XMLHttpRequest组件。通过open()方法创建一个设置了发送方式和请求路径的HTTP请求。
//4.发送请求。

//1.创建XMLHttpRequest对象。
if(window.XMLHttpRequest){//返回值为true时,说明是新版本的IE或其他浏览器。
//每次写到这里的时候我在心里都想狠狠的骂一句娘。就只有微软爱玩另类
//搞得程序员每次都得多写两行代码。
//当然。这也不只是大家用Linux的原因。。。
xmlHttpRequest = new XMLHttpRequest();

}else{//返回值为false时,说明是老版本的IE(包括IE5和IE6)
xmlHttpRequest = new ActiceXObject("Microsoft.XMLHTTP");

}
//2.设置回调函数。
xmlHttpRequest.onreadystatechange = callBack;

//3.初始化XMLHttpRequest组件。
xmlHttpRequest.open("GET",url,true);

//4.发送请求。
xmlHttpRequest.send(null);

//回调函数callBack的关键代码。
function callBack(){

if(xmlHttoRequest.readyState == 4 && xmlHttpRequest.status == 200){
var b = xmlHttpRequest.responseTest;
//这里应该没啥不好理解的吧。
//反正我照书上这么抄下来 是好使的!
//嗯好使就行呗你管他呢!这就是回调一个xmlHttpRequest.responseTest;
//反正我也不知道怎么回事

};
};

//!!!!!!!!!!!!!!!!!!!!发送POST请求及处理文本方式相应。
//1.创建XMLHttpRequest对象。
if(window.XMLHttpRequest){//返回值为true时,说明是新版本IE或其他浏览器。
xmlHttpRequest = new XMLHttpRequest();

}else{//返回值为false时,说明是老版本IE(包括IE5和IE6)
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
};
//2.设置回调函数。
xmlHttpRequest.onreadystatechange = callBack;
//3.初始化XMLHttpRequest组件。
xmlHttpRequest.open("POST",url,true);
xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//4.发送请求 。
var userinfo="uname="+uname;//需要发送的数据信息。
xmlHttpRequest.send(userinfo);

//总的来说和上面差不多。嗯。真的差不多 就是后面3 4吧 稍微有点变化。
//无非就是post得 大家 暗示着去传递信息。 你不能像get一样明面上展示出来啊!
//这就好像是胸罩!大家都有。不是。。。呸。。。我没有。。。就是。。。反正你得暗示一下!

//!!!!!!!!!!!!!!!!!!!!发送GET请求及处理XML方式相应。
//XmlDocument对象的常用属性。
//attributes当前节点的属性集合。
//childNodes当前节点的所有子节点。
//firstChild节点的第一子节点。
//我始终觉得管子节点叫child很别扭。。。因为子节点下面的孙子节点还是child
//发生这种情况只可能因为——————这是个二胎!!

//XmlDocument对象的常用方法。
//getElementsByTagName();用来获取指定节点迷宫的节点对象集合。参数为节点名称字符串。
//selectSingleNode();用来获取复合条件的第一个节点对象。
//selectNodes()用来获取复合条件的节点对象集合。

function callBack(){
if(xmlHttoRequest.readyState == 4 && xmlHttpRequest.status ==200){
var dom = xmlHttpRequest.responseXML;//获取服务器端返回的XML形式的文档对象。
if(dom){
var userNodes = dom.getElementsVtTagName();//获取节点名为:"username"的节点对象集合。
if(userNodes.length > 0){
var username = userNodes[0].firstChild.nodeValue;//获取该节点对象集合中的第一个子节点值

document.getElementById_x_x("username").value = username;
}
}
}
}

//我是一个小说家。忽然觉得。
//我TM不出一本教科书实在是愧对自己了。如果有书商愿意赞助我出一本关于JAVA JS JSP的书的话 
//请联系我。。。

//哦对了。以上是源生dom里面Ajax的写法。我写出来主要是为了以后温故而知新。
//不过这个时候我要告诉你 这玩意工作以后用不到 你会不会咬我?


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息