• ashx+html+ajax


     HTML:

    $(function() {
         ajax("NewsList.ashx", function(resText) {
         document.getElementById("newsList").innerHTML = resText;
         });
    });

     AJAX:

    function ajax(url, onsuccess)
    {
        var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); //创建XMLHTTP对象,考虑兼容性。XHR
        xmlhttp.open("GET", url, true); //“准备”向服务器的GetDate1.ashx发出Post请求(GET可能会有缓存问题)。这里还没有发出请求
    
        //DRY:不要复制粘贴代码
        //AJAX是异步的,并不是等到服务器端返回才继续执行
        xmlhttp.onreadystatechange = function ()
        {
            if (xmlhttp.readyState == 4) //readyState == 4 表示服务器返回完成数据了。之前可能会经历2(请求已发送,正在处理中)、3(响应中已有部分数据可用了,但是服务器还没有完成响应的生成)
            {
                if (xmlhttp.status == 200) //如果Http状态码为200则是成功
                {
                    onsuccess(xmlhttp.responseText);
                }
                else
                {
                    alert("AJAX服务器返回错误!");
                }
            }
        }
        //不要以为if (xmlhttp.readyState == 4) {在send之前执行!!!!
        xmlhttp.send(null); //这时才开始发送请求。并不等于服务器端返回。请求发出去了,我不等!去监听onreadystatechange吧!
    }
  • 相关阅读:
    致敬我的2015
    葡萄城报表-导出输出
    葡萄城报表-内网发布
    葡萄城报表-核心代码展示
    点滴积累--工作总结
    解决WPF中ListViewItem对齐问题
    IIS上传文件失败
    HTTP 错误 404.4
    端口及IP复习
    请考虑将 "await" 运算符应用于调用结果
  • 原文地址:https://www.cnblogs.com/liuswi/p/3785297.html
Copyright © 2020-2023  润新知