zoukankan      html  css  js  c++  java
  • Ajax-使用

    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="测试" onclick="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的异步和同步

    好好学习,天天向上。 努力工作,给自己的和家人一个满意的答案。。。。
  • 相关阅读:
    11111 Generalized Matrioshkas
    Uva 442 Matrix Chain Multiplication
    Uva 10815 Andy's First Dictionary
    Uva 537 Artificial Intelligence?
    Uva 340 MasterMind Hints
    SCAU 9508 诸葛给我牌(水泥题)
    Uva 10420 List of Conquests(排序水题)
    Uva 409 Excuses, Excuses!
    10/26
    11/2
  • 原文地址:https://www.cnblogs.com/axu521/p/9949783.html
Copyright © 2011-2022 走看看