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

原生js实现ajax

2018-03-10 12:38 555 查看
实现POST方法

var xmlhr;

if (window.XMLHttpRequest) {

xmlhr = new XMLHttpRequest();

} else {

xmlhr = new ActiveXObject("Microsoft.XMLHTTP");

}

// 在这里将open()函数的第三个参数设置为false,表示ajax同步执行

xmlhr.open("POST","test.php",true);

xmlhr.onreadystatechange = function () {

if (xmlhr.readyState == 4 && xmlhr.status == 200 || xmlhr.status == 304) {

if (xmlhr.responseText == "true") {

alert("成功");

}else {

alert("成功");

}

}

}

// 参数

var data = "email=" + emailinput.value;

xmlhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

xmlhr.send(data);
对于Content-Type的可能的值可以参考文章

http://blog.csdn.net/interesting_wang/article/details/79506907

实现GET方法
var xmlhr;

if (window.XMLHttpRequest) {

xmlhr = new XMLHttpRequest();

} else {

xmlhr = new ActiveXObject("Microsoft.XMLHTTP");

}

// 生成路由

var url = "./action/user.action.php?action=checkRepeatEmail&email=" + emailinput.value;

// GET方式请求服务器端数据

xmlhr.open("GET",url,true);

xmlhr.send();

xmlhr.onreadystatechange = function () {

if (xmlhr.readyState == 4 && xmlhr.status == 200 || xmlhr.status == 304) {

if (xmlhr.responseText == "true") {

alert("成功");

}else {

alert("成功");

}

}

}
在PHP脚本test.php中只需要echo “true”;即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: