首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

jquery的几种ajax形式对比

2012-11-22 
jquery的几种ajax方式对比jquery的ajax方式有如下几种: 1.?? $.post(url,params,callback) 2.?? $.getJSO

jquery的几种ajax方式对比

jquery的ajax方式有如下几种:
1.?? $.post(url,params,callback);
2.?? $.getJSON(url,params,callback);
3.?? $.ajax();
4.?? $.load(url,params,callback);

第一种:采用post方式提交,中文参数无需转码,在callback中如果要获取json字符串,还需转换一下。
如:

    $.post(url,{id: id,code: code, companyId:companyId },function (data){showCompanyRadialDataListdatalist});这个datalist为从后台取回来的数据List。function showCompanyRadialDataList(datalist){ var obj = eval(datalist); }//这个eval可以将data转成json串。方便后面取值。如:for (var i =0 ; i< obj.length ;i++){ $("td:eq(1)",$tr).htmlobj[i].nuclide);//这里可以用json方式取datalist里面的数据 }



    第2种方式:getJSON采取get方式提交,所以如果你的params参数里面有中文的话,请先转码,否则会出现乱码提交到后台。

      $.getJSON(url,param,function(jsondata){这里返回的jsondata可以直接取不用再转换了。如:jsondata[0].nuclide}


      第3种方式:$.ajax, 这种方式最灵活。

        $.ajax({ url: url,//地址 data: data,//参数 type: 'POST',//提交方式 可以选择post/get 推荐post async: false,//同步异步 dataType: 'json',//返回数据类型 success:function(data){ accidentList = data.list; //这里可以直接取data里面的数据了,因为设置返回值为json方式。 }});


        当然$.ajax里面还有很多参数 可以加更多的特效在里面,如ajaxStart ,ajaxStop等等,
        上面的参数type,async,dataType都不是必须的。
        第4种方式:$.load 这种用得很少,一般是来加载某一个页面或者xml等等。

        总结:如果参数中没有中文,又想直接用json ,那就推荐$.getJSON,如果有中文 那就采用$.post或者$.ajax。

热点排行