ajax总结

2 篇文章 0 订阅

1:ajxa是调用浏览器异步引擎去向服务器发送请求的
2:ajax开发步骤:
1:new 对象
var xmlHttp = new XMLHttpRequest();
2:绑定readystate改变函数(回调函数的实现原理就是绑定readystate为正确响应)
xmlHttp.onreadystatechange= function(){
if(xmlHttp.readyState == 4 && xmlHttp.status == 200){
执行的回调函数
}
}
3:配置参数
xmlHttp.open(“请求方式”,”请求地址”);
xmlHttp.send();发送请求,可以内置请求变量
1:对于GET请求直接在open请求地址中拼接请求变量,并在send(null);
2:对于POST请求,要设置请求头,格式是不变的
xmlhttp.setRequestHeader(“content-type”,
“application/x-www-form-urlencoded”);(这个必须在open()后)
然后再send(“name=”+传递的值)
3:ajax能接受的返回类型有
responseText和responseXML
由于XML比较复杂,所以衍生出一种基于文本传输的数据格式,那就是JSON(本质就是一种文本,可以传化为任何语言的对象),
4:在js中获取json的原理是同eval函数来改变Text为对象
例如:var json = eval(xmlhttp.responseText);
这样有时转换不了,所有两边加上小括号,保证能转换成功。
var json = eval(“(“+xmlhttp.responseText+”)”);
5:ajax省市级联动
1:后台需要将父子级需要的所有信息封装早JSON中,后台是LIST类型
2:在js中定义一个全局变量接受JSON
var json;
xmlHttp = new XMLHttpRequest();

    xmlHttp.onreadystatechange = function(){

if (xmlHttp.readyState == 4 && xmlHttp.status == 200){

            json = eval("(" + xmlHttp.responseText + ")");
            var province = document.getElementById("province");
            for(var i=0;i<json.length;i++){
                var provinceName = json[i].name;
                var option = document.createElement("option");
                option.text = provinceName;
                province.add(option);
            }
        }
    };

3: for(var i=0;i<返回数组的长度;i++) {

                var provinceName = json[i].name;
                var option = document.createElement("option");
                option.text = provinceName;
                province.add(option);
            }
     循环获取省份名称,加到province的select中

4:子级内容增加的实现:
在父级属性上增加一个οnchange=”fillCity()”
再实现该方法
var province = document.getElementById(“province”);
var city = document.getElementById(“city”);
1:获取父子级select
var provinceName = province.options[province.selectedIndex].text;
2:获取选中的province
for(var i=0;i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值