博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ajax-使用
阅读量:5314 次
发布时间:2019-06-14

本文共 2566 字,大约阅读时间需要 8 分钟。

readystate储存ajax的状态码

1、创建ajax引擎对象时,readyState为0,这时会触发onreadystatechange但是没有数据,

2、open()时(开发连接),readyState为1,这时会触发onreadystatechange但是没有数据

3、send()时(传递参数),readyState为2,这时会触发onreadystatechange但是没哟数据

4、请求已发送,readyState为3,正在接受数据

5、表示数据已经成功接收,readyState为4

    <!-- 声明js代码域 -->
    <script type="text/javascript">
        function getData(){
            //创建ajax引擎对象
                var ajax;
                if(window.XMLHttpRequest){//火狐
                    ajax=new XMLHttpRequest();
                }else if(window.ActiveXObject){//IE
                    ajax=new ActiveXObject("Msxml2.XMLHTTP");
                }
            //复写onreadystatement函数(监听函数监听Ajax状态码readystate)
            ajax.onreadystatechange=function(){

                //判断Ajax状态码

                if(ajax.readyState==4){
                    //判断响应状态码(status为专门查看接收数据的Http状态码)
                    if(ajax.status==200){
                        //获取响应内容  ()
                        var result=ajax.responseText;
                        alert(result);
                        //获取元素对象
                        var showdiv=document.getElementById("showdiv");
                        showdiv.innerHTML=result;    
                    }else if(ajax.status==404){
                            //获取元素对象
                            var showdiv=docunment.getElementById("showdiv");
                            showdiv.innerHTML="请求资源不存在";
                    }else if(ajax.status==500){
                        //获取元素对象
                        var showdiv=document.getElementById("showdiv");
                        showdiv.innerHTML="服务器繁忙";
                    }
                }
            }
            //发送请求("get"请求方式、"ajax"是请求资源名、默认true异步(false是同步))
            ajax.open("get","ajax",false);     get请求方式将请求实体拼接在URL后面:ajax.open("get",“URL”); (url ? 隔开添加键值对)
            ajax.send(null);           post方式:请求实体需要单独发送:ajax.open("post","URL");
                                                 ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
                                                 ajax.send("name=axuxuxu&pwd=12334");
            alert("哈哈哈哈哈!!!!");        
        }
 </script>
 
   <body>
    <h3>欢迎登录403峡谷</h3>    
    <hr>
    <input type="button" value="测试" οnclick="getData()"/>
    <div  id=showdiv>
        
    </div>
        Ajax学习:
            1、ajax概念
                局部刷新技术。不是一门新技术,是多种技术的组合。是浏览器端的技术。
            2、ajax的作用
                实现在当前结果页中显示其他请求的响应内容
            3、ajax的使用
                ajax的基本流程
                        创建ajax引擎对象
                        复写onreadystatement函数
                            判断ajax状态码
                                判断响应状态码
                                    获取响应内容(响应内容的格式)

             1、//普通字符串 使用麻烦大量拼接  responseText

             2、//json (比普通的字符串好)   responseText ( 使用谷歌的架包gson(resp.getwriter.writer(new Gson().toJson(对象))) 只需要将java对象传入,在jsp页面中就会显示json格式数据)

                其实就是讲述java对象数据按照json格式拼接好的字符串,方便使用eval()方法
                将接受的字符串数据直接转换为js的对象
                json格式:
                      var 对象名={
                                  属性名:属性值,
                                  属性名:属性值,
                                  ............
                                  }

             3、//XML:responseXML

                通过document对象将数据从xml中获取 例(alert(doc.getElementsByTagName("name")[0].innerHTML);)

 

                                    处理响应内容(js操作文档结构)

              get方式看上面的实例

              post方式看上面的实例

                        发送请求
                ajax的状态码:
                    ajax状态码:
                        readystate:0、1、2、3、4
                            4:表示响应内容被成功接收
                    响应状态码:
                        status
                        200:一切ok
                        404:资源未找到
                        500:内部服务器错误
                ajax的异步和同步

 

转载于:https://www.cnblogs.com/axu521/p/9949783.html

你可能感兴趣的文章
初始面向对象
查看>>
leetcode Letter Combinations of a Phone Number
查看>>
Unity 5.4 测试版本新特性---因吹丝停
查看>>
7.5 文件操作
查看>>
MyEclipse中将普通Java项目convert(转化)为Maven项目
查看>>
node js 安装.node-gyp/8.9.4 权限 无法访问
查看>>
windows基本命令
查看>>
VMware中CentOS设置静态IP
查看>>
[poj1006]Biorhythms
查看>>
Hyper-V虚拟机上安装一个图形界面的Linux系统
查看>>
Hover功能
查看>>
js千分位处理
查看>>
Mac---------三指拖移
查看>>
字符串类型的相互转换
查看>>
HTTP状态码
查看>>
iOS如何过滤掉文本中特殊字符
查看>>
基础学习:C#中float的取值范围和精度
查看>>
MongoDB-CRUD
查看>>
javaagent 简介
查看>>
python升级安装后的yum的修复
查看>>