• 使用jquery来完成AJAX操作


    jQuery对Ajax操作进行了封装,在jQuery中最底层的方法是$.ajax(),第二个是load(),$.get()和$.post(),第三层是$.getscript()和$.getJSON()。

      load()方法

      -load()方法是jquery中最为简单和常用的ajax方法,能载入远程的HTML并插入到DOM中,它的结构是:load(url [,data][,callback]);

      url     string      请求HTML页面的URL地址

      data可选  object      发送到服务器的key/value数据

      callback  function      请求完成时的回调函数,无论请求成功或失败

      -程序员只需要使用jquery选择器为HTML片段指定目标位置,然后将要加载的文件的URL作为参数传递更给load()方法即可

      细节

      -如果需要加载目标HTML页面内的某些元素,则可以通过load()方法的url参数来达到目的,通过url参数指定选择符,就可以方便的从加载过来的HTML文档中选出所需要的内容,load()方法的url参数的语法结构为“url selector”(注意:url和选择器之间有一个空格)

      -传递方式:load()方法的传递参数根据data来自动自定,如果没有参数,采用GET方式传递,否则采用POST方式

      -对于必须在加载完才能继续的操作,load()方法提供了回调函数,该函数由三个参数:代表请求返回内容的data;代表请求状态的textStatus对象和XMLHttpRequest对象

      -laod()方法  只能用于 txt和html 数据传输

      

    <body>
        <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
             //使用jquery来操作Ajax
             $("a:first").on("click",function(){
                 var url=this.href;   //直接填写url就行  默认方式是get
                 
                 $("#show").load(url);
                 return false;
             });
            });
    
    
    
        </script>
    
    <ul>
        <li><a href="content1.txt">content</a></li>
        <li><a href=""></a>container</li>
        <li><a href=""></a>conmand</li>
    
    </ul>
        <div id="show"></div>
       
    </body>
    

      

        <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
             //使用jquery来操作Ajax
             $("a:first").on("click",function(){
                 //<h2><a href="">www.zhongguo.com</a></h2>
                 //如果只想要a标签  可以这么写
                 var url=this.href+" a";  
                 
                 $("#show").load(url);
                 return false;
             });
            });
    
    
    
        </script>
    

      

        <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
             //使用jquery来操作Ajax
             $("a:first").on("click",function(){
                 var data={"time":new Date()};  //post请求JSON格式,清理缓存
                 //<h2><a href="">www.zhongguo.com</a></h2>
                 //如果只想要a标签  可以这么写
                 var url=this.href+" a";  
                 
                 $("#show").load(url,data);
                 return false;
             });
            });
    
    
    
        </script>
    

      $.get() $.post方法

      $.get()方法使用GET方式来进行异步请求,它的结构是:$.get(url,[,data][,callback][,type]);

      参数名称          类型          说明

      url            string          请求HTML页面的url地址

      data(可选)         object          发送到服务器的key/value数据作为QueryString

                                附加到请求url中

     callback(可选)          function        载入成功时,回调函数(只有当response返回

                                状态时,success才调用该方法)

      type (可选)        string         服务器返回内容的格式,包括 xml、html json 

                                script text

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
         <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                $("a:first").on("click",function(){
                    var url=this.href;
                    //解析xml数据格式使用$.get(),其中返回的对象在回调函数function中 a
                    $.get(url,function(a){
                        //获取a子元素from的文本
                        var name=$(a).find("from").text();
                        //添加到DIV中
                        $("#show").append(name);
                    });
    
    
                    return false;
                });
            });
        </script>
     
    <ul>
        <li><a href="content3.xml">content</a></li>
        <li><a href=""></a>container</li>
        <li><a href=""></a>conmand</li>
    </ul>
        <div id="show"></div>
    </body>
    </html>
    

      $.post()方法和$.get()方式参数都是一样的  只是请求不一样  一个是GET  一个是POST

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
         <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                $("a:first").on("click",function(){
                    var url=this.href;
                    //解析xml数据格式使用$.get(),其中返回的对象在回调函数function中 a
                    $.post(url,function(a){
                        //获取a子元素from的文本
                        var name=$(a).find("from").text();
                        //先清空div中的元素  之后在添加元素,防止多次点击的时候重复添加
                        $("#show").empty().append(name);
                    });
     
    
                    return false;
                });
            });
        </script>
     
    <ul>
        <li><a href="content3.xml">content</a></li>
        <li><a href=""></a>container</li>
        <li><a href=""></a>conmand</li>
    </ul>
        <div id="show"></div>
    </body>
    </html>
    

      $.getJSON()方式

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
         <script src="jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                $("a:first").on("click",function(){
                    var url=this.href;
                    
                    $.getJSON(url,function(a){
                        //getJSON 返回的是json格式的数据,原生的js,不需要解析,而且也不需要返回jquery对象
                        //返回的xml对象,jquery要是想使用,必须转换jquery对象
                        //获取a子元素from的文本
                        var name=a.email;
                        //先清空div中的元素  之后在添加元素,防止多次点击的时候重复添加
                        $("#show").empty().append(name);
                    });
     
    
                    return false;
                });
            });
        </script>
     
    <ul>
        <li><a href="content.js">content</a></li>
        <li><a href=""></a>container</li>
        <li><a href=""></a>conmand</li>
    </ul>
        <div id="show"></div>
    </body>
    </html>
    

      

  • 相关阅读:
    【Leetcode_easy】1030. Matrix Cells in Distance Order
    【Leetcode_easy】1033. Moving Stones Until Consecutive
    【Leetcode_easy】1037. Valid Boomerang
    【Leetcode_easy】1042. Flower Planting With No Adjacent
    【Leetcode_easy】1046. Last Stone Weight
    【Leetcode_easy】1047. Remove All Adjacent Duplicates In String
    【Leetcode_easy】1051. Height Checker
    【Leetcode_easy】1071. Greatest Common Divisor of Strings
    【Leetcode_easy】1154. Day of the Year
    【Leetcode_easy】1170. Compare Strings by Frequency of the Smallest Character
  • 原文地址:https://www.cnblogs.com/xiaowie/p/10938343.html
Copyright © 2020-2023  润新知