zoukankan      html  css  js  c++  java
  • 完整的 AJAX 写法(支持多浏览器)

    代码如下:

    <script type="text/javascript">
    
        var xmlhttp;
        function Submit() {
    
            //1.创建 XMLHttpRequest 对象
            if (window.XMLHttpRequest) {
    
                //IE7,IE8,FireFox,其它
                xmlhttp = new XMLHttpRequest();
                if (xmlhttp.overrideMimeType) {
    
                    //针对某些特定版本的mozillar浏览器的BUG进行修正  
                    xmlhttp.overrideMimeType("text/xml");
                }
               
            } else if (window.ActiveXObject) {
    
                //IE6,IE5.5,IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                
            }
        
        // 简单写法,应该也可以
        //xmlhttp = new XMLHttpRequest()|| new ActiveXObject("Microsoft.XMLHTTP");
    
            if (xmlhttp == undefined || xmlhttp == null) {
                alert('当前浏览器不支持创建XMLHttpRequest对象,请更换浏览器!');
                return;
            }
    
            //将每次的状态保存到 数组里
            array.push(xmlhttp.readyState);
    
            //2.注册回调方法 callback
            xmlhttp.onreadystatechange = callback;
    
            //获取客户端内容
            var userName = document.getElementById("UserName").value;
    
            /* 
            //Get 请求方式
            //3.设置和服务端交互的相应参数
            xmlhttp.open("Get", "AjaxRequst.ashx?name="+userName, true);
    
            //4.设置向服务器发送数据,启动和服务端的交互
            xmlhttp.send();
            */
    
            //Post 请求方式
            //3.设置和服务端交互的相应参数
            xmlhttp.open("Post", "AjaxRequst.ashx", true);
    
            //Post方式需要增加的代码
            xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    
            //4.设置向服务器发送数据,启动和服务端的交互
            xmlhttp.send("name="+userName);
            
        }
    
        function callback() {
            //5.判断和服务器端的交互是否完成,还要判断服务端的是否正确返回了数据
            if (xmlhttp.readyState == 4) {
                //表示和服务端的交互已经完成
                if (xmlhttp.status == 200) {
                    //表示服务器的响应代码是200,正确的返回数据
                    //纯文件数据的接受方法
                    var message = xmlhttp.responseText;
    
                    //将返回的内容添加到DIV层里
                    var div = document.getElementById('message');
                    div.innerHTML = message;
    
                    //XML数据对应的DOM对象的接受方法
                    //使用前提是,服务器端需要设置content-type为text/xml
                    //var domXml = xmlhttp.responseXML;
                    
                }
            }
        }
        
    </script>
  • 相关阅读:
    AIMS 2013中的性能报告工具不能运行的解决办法
    读懂AIMS 2013中的性能分析报告
    在线研讨会网络视频讲座 方案设计利器Autodesk Infrastructure Modeler 2013
    Using New Profiling API to Analyze Performance of AIMS 2013
    Map 3D 2013 新功能和新API WebCast视频下载
    为Autodesk Infrastructure Map Server(AIMS) Mobile Viewer创建自定义控件
    ADN新开了云计算Cloud和移动计算Mobile相关技术的博客
    JavaScript修改css样式style
    文本编辑神器awk
    jquery 开发总结1
  • 原文地址:https://www.cnblogs.com/xgao/p/4156027.html
Copyright © 2011-2022 走看看