zoukankan      html  css  js  c++  java
  • Ajax学习总结

    第一次听到ajax这个词语之后感觉很是陌生,后来硬着头皮看了一些资料(那时候可能有点烦躁),发现ajax并不是什么新技术,只不过是借助javascript对后台返回的数据动态的在页面里面创建了一下内容。

    原先的应该是在每一次请求中整个页面的内容都重新返回,然后重新由浏览器渲染一下,而ajax的思想是通过javascript对dom的操作,只是部分内容被修改,而非全部~但是就这么小小的改动可以带来好多好处~最主要的是题升了用户体验,毕竟“顾客是上帝嘛~”,哈哈~下面是一些在ajax操作中比较常用的函数希望对大家有用~

    一定要注意get请求和post请求在ajax中的区别~

    创建XMLHttpRequest对象

        function  createXmlHttp() =  {
            
    var xmlHttp = null;
             
    //根据window.XMLHttpRequest对象是否存在使用不同的创建方式
            if (window.XMLHttpRequest) {
               xmlHttp 
    = new XMLHttpRequest(); 

            
    //FireFox、Opera等浏览器支持的创建方式--通过XMLHttpRequest()构造函数创建XMLHttpRequest对象
            }

         
    else {
              
    var xmlhttp_arr = ["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
                  
    for(var i=0;i<xmlhttp_arr.length;i++){
                   
    if(xmlHttp = new ActiveXObject(xmlhttp_arr[i]))  break;
        
    /*   IE浏览器支持的创建方式--通过ActiveXObject()构造函数创建XMLHttpRequest对象,较新的版本支持参数MSXML2.XMLHTTP,较早的版本支持Microsoft.XMLHTTP(因为XML HTTP库的版本不同,所以需要传入不同的参数)  */
           }

    return xmlHttp;
      }

    URL附加数据函数


     function add_param_get(url,name,value){
      url 
    += (url.indexOf("?"== -1)? "?":"&";
      url 
    += name + "=" + value;
      
    return url;
      }


    function add_param_post(url,name,value){
      url 
    += (url.length > 0)? "&":"";
      url 
    += name + "=" + value;
      
    return url;
      }

    发送请求(GET)

     

    url = "test.php";
     url 
    = add_param_get(url,"name","value");
      
     
    var xml_http = new createXmlHttp();
     xml_http.open(
    "GET",url,true);
     xml_http.send(
    null);
     
     
    if(xml_http.readyState == 4)
     {
      
    if(xml_http.status == 200){
        alert(xml_http.getAllResponseHeaders());
        alert(xml_http.responseText);
       } 
      
    else{
       alert(
    "Error Status:" + xml_http.status);
      }
     }

    发送请求(POST)

    function sent_post(){
      
      
    var url = "test.php";
      paras 
    = "";
      paras 
    = add_param_post(paras,"user",document.user.info.value);
      xml_http.open(
    "POST",url,true);
      xml_http.setRequestHeader(
    "Content-Type","application/x-www-form-urlencoded")
      xml_http.onreadystatechange 
    = deal_result;
      xml_http.send(paras);
      
    return;
     }
     
     
    function deal_result(){
      
    if(xml_http.readyState == 4)
      {
       
    if(xml_http.status == 200){
        
    var res = xml_http.responseText;
        document.user.info.value 
    = res;
       } 
       
    else{
        alert(
    "Error Status:" + xml_http.status);
       }
      }
      
    return;
     }
  • 相关阅读:
    node基础和express服务器框架知识点总结
    Nacos配置服务原理
    Queue-PriorityQueue源码解析
    Mysql存储结构
    Mybatis处理动态占位符实现
    通过ThreadPoolExecutor源码分析线程池实现原理
    jdk8函数接口
    Logback源码分析
    Spring注解Component原理源码解析
    ApplicationListener原理分析
  • 原文地址:https://www.cnblogs.com/zhihui/p/2077629.html
Copyright © 2011-2022 走看看