1. 程式人生 > >jQuery對ajax的支持

jQuery對ajax的支持

callback test string 傳遞 jquer page val logs eva

有load,get,post和ajax四個方法都可以,其中後三個直接使用$.xx調用

使用方法大致相同,這裏只介紹get和post方法

--------------------------------------------------------------------------

JQuery API

jQuery.get(url, [data], [callback], [type])

jQuery.post(url, [data], [callback], [type])

jQuery.ajax(url,[settings])

----------------------------------------------------------------------------

函數的參數信息:

url,[data],[callback],[type]String,Map,Function,StringV1.0

url:待載入頁面的URL地址

data:待發送 Key/value 參數。

callback:載入成功時回調函數。

type:返回內容格式,xml, html, script, json, text, _default。

----------------------------------------------------------------------------

回調函數的參數:可選

backData:返回值,可能是對象也可能是一個字符串或者js串

      默認情況由服務器返回值決定類型,但也可以根據type參數來決定格式

--------------------------------------------------------------------------

推薦使用規則:

  如果只是獲取數據而不傳遞數據,那麽使用get

    ①:jQuery.get(url) 根據實際需求對待返回的對象

    ②:jQuery.get(url, function() {

        ...........      

      }) 根據實際需求對待返回的對象

  如果需要傳遞數據就用post方式

    ①:jQuery.post(url, data) 可以上傳頭像使用

    ②:jQuery.post(url, data, function(backData) {

        ..................backData類型不確定

      })

    ③:jQuery.post(url, data, function(backData) {

        ..................強制指定返回值為文本類型,但是如果返回的是json串則無法通過js操控

              解決方法:把文本類型轉換成js對象,使用eval函數

                    var newData = eval( "(" + backData + ")" );

      }, “text”)

一個小例子:

強制使用文本形式獲取json串

 1 <script type="text/javascript">
 2            
 3            var url = "${pageContext.request.contextPath}/test";
 4            var params = {"test": "哈哈哈"};
 5            $.post(url, params, function(backData) {
 6            
 7                alert(backData); //強制獲取文本類型
 8                
 9                var newData = eval("(" + backData + ")"); //轉換成js對象
10                
11                var res = newData.sList;        //通過js操縱json對象
12                for (var i = 0; i < res.length; i++) {
13                    alert(res[i]);
14                }
15            
16            }, "text");
17            
18 </script>

默認方式,如果是字符串就是text類型,如果json串就是js對象

<script type="text/javascript">
           
           var url = "${pageContext.request.contextPath}/test";
           var params = {"test": "哈哈哈"};
           $.post(url, params, function(backData) {
           
               alert(backData); //這裏是輸出object,即js對象
               
               for (var i = 0; i < res.length; i++) {
                   alert(res[i]);
               }
           
           });
           
</script>

jQuery對ajax的支持