roodyszz0 2019-06-28
var xhr = new XMLHttpRequst();
function createXHR(){
if (typeof XMLHttpRequest != "undefined"){
return new XMLHttpRequest();
} else if (typeof ActiveXObject != "undefined"){
if (typeof arguments.callee.activeXString != "string"){
var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0",
"MSXML2.XMLHttp"];
var i;
var len;
for (i=0,len=versions.length; i < len; i++){
try {
new ActiveXObject(versions[i]);
arguments.callee.activeXString = versions[i];
break;
} catch (ex){
//skip
}
}
}
return new ActiveXObject(arguments.callee.activeXString);
} else {
throw new Error("No XHR object available.");
}
}
var xhr = createXHR();xhr.open();//接受3个参数:发送请求的类型,请求的地址,是否异步请求 xhr.setRequestHeader();//接受两个参数:设置htttp头部的名字,设置http头部的值 xhr.send();//接受一个参数:作为请求主体的数据 xhr.abort();//取消异步请求
responseText:获得字符串形式的响应数据。 responseXML:获得 XML 形式的响应数据。 status:响应http的状态。 statusText:响应状态说明。
0: 未初始化。未调用open()方法。 1: 启动。已调用open(),未调用send() 2: 发送。已调用send(),尚未接收到响应数据 3: 接收。接收到部分响应数据 4: 完成。已经接收到所有数据readyState每次改变时将会触发readystatechange事件。
//例子
var xhr = createXHR();
xhr.onreadystatechange = function(event){
if (xhr.readyState == 4){
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304){
alert(xhr.responseText);
} else {
alert("Request was unsuccessful: " + xhr.status);
}
}
};
xhr.open("get", "example.txt", true);
xhr.send(null);用下面这个函数实现添加参数
function addURLParam(url, name, value) {
url += (url.indexOf("?") == -1 ? "?" : "&");
url += encodeURIComponent(name) + "=" +encodeURIComponent(value);
return url ;
}xhr.open('post','请求地址',true);loadstart:在接收到相应数据的第一个字节时触发。 progress:在接收相应期间持续不断触发。 error:在请求发生错误时触发。 abort:在因为调用abort()方法而终止链接时触发。 load:在接收到完整的相应数据时触发。 loadend:在通信完成或者触发error、abort或load事件后触发。
每个请求不对触发Loadstart事件开始,接下来是一或多个progress事件,然后触发error、abort或load事件中的一个,最后以触发loadend事件结束。
var xhr = createXHR();
xhr.onload = function () {
if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
alert(xhr.responseText);
} else {
alert("Request was unsuccessful: " + xhr.status);
}
};
xhr.open("get", "altevents.php", true);
xhr.send(null);只要浏览器接收到服务器的响应,不管其状态如何,都会触发load事件。而这意味着你必须要检查status属性,才能确定数据是否真的已经可用了。Firefox、Operan、Chrome和Safari都支持load事件。结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo
本文实例讲述了php+ ajax 实现的写入数据库操作。分享给大家供大家参考,具体如下:。<input class="tel" type="text" placeholder="请输入您的手机号码&q