html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

var url = 'http://192.168.4.1:8082/Person/Detail';

//AjaxUtil.addURLParam(url, 'id', 920);

//AjaxUtil.addURLParam(url, 't', Math.random());

var xhr = AjaxUtil.createXHR();

xhr.onreadystatechange = function () {

if(xhr.readyState == 4) {

if((xhr.status >=200 && xhr.status

alert(xhr.responseText);

} else {

alert('请求失败!' + xhr.status);

}

}

}

xhr.open('post', url, true);

//设置请求头必须在open()方法之后,send()方法之前

xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

//xhr.open('get', url, true);

xhr.send("id=920");

XMLHttpRequest的readyState属性标识请求/响应过程的状态变化,有以下取值

0:未初始化,尚未调用open()方法

1:启动 已调用open() 方法,尚未调用send() 方法

2:发送 已调用send() 方法

3:接收:已接收到部分数据

4:完成:已接收到全部数据

每次readyState变化都会触发readystatechange事件,我们需要关注的是状态4var AjaxUtil = {

//创建XMLHttpRequest对象,兼容IE7以下版本

createXHR: function () {

if (typeof XMLHttpRequest != 'undefined') {

return new XMLHttpRequest();

} else if ( typeof ActiveObject != 'undefined') {

if (typeof arguments.callee.activeString != 'string') {

var versions = ['MSXML.XMLHttp.6.0','MSXML.XMLHttp.3.0','MSXML.XMLHttp'];

var i,len;

for (i=0,len=versions.length; i

try {

new ActiveObject(versions[i]);

arguments.callee.activeString = versions[i];

break;

} catch (ex) {

}

}

return new ActiveObject(arguments.callee.activeString);

}

} else {

throw new Error("浏览器不支持!");

}

}

//为GET请求添加参数

, addURLParam: function (url, name, value) {

url += (url.indexOf('?') == -1) ? '?' : '&';

url += encodeURIComponent(name) + '=' + encodeURIComponent(value);

return url;

}

}

//代码摘自Javascript高级程序设计Ajax部分

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐