jquery的几种ajax方式对比
2015-07-06 16:42
671 查看
jquery的ajax方式有如下几种:
1. $.post(url,params,callback);
2. $.getJSON(url,params,callback);
3. $.ajax();
4. $.load(url,params,callback);
第一种:采用post方式提交,中文参数无需转码,在callback中如果要获取json字符串,还需转换一下。
如:
Java代码
$.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参数里面有中文的话,请先转码,否则会出现乱码提交到后台。
Java代码
$.getJSON(url,param,function(jsondata){
这里返回的jsondata可以直接取不用再转换了。
如:jsondata[0].nuclide
}
第3种方式:$.ajax, 这种方式最灵活。
Java代码
$.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。
1. $.post(url,params,callback);
2. $.getJSON(url,params,callback);
3. $.ajax();
4. $.load(url,params,callback);
第一种:采用post方式提交,中文参数无需转码,在callback中如果要获取json字符串,还需转换一下。
如:
Java代码
$.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参数里面有中文的话,请先转码,否则会出现乱码提交到后台。
Java代码
$.getJSON(url,param,function(jsondata){
这里返回的jsondata可以直接取不用再转换了。
如:jsondata[0].nuclide
}
第3种方式:$.ajax, 这种方式最灵活。
Java代码
$.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。
相关文章推荐
- cleanzone模板-表格插件jquery.datatables
- jquery的ajax和getJson跨域获取json数据
- jQuery工具函数
- jQuery入门:用包装集工作(Working with Selections)
- jquery的ajax提交form表单
- jquery cookie用法(获取cookie值,删除cookie)
- jQuery原型属性constructor,selector,length,jquery和原型方法size,get,toArray源码分析
- 解决jquery新加入的元素没有绑定事件问题
- jQuery中的ajax处理json三种方法
- jQuery的笔记
- C#后台拼接jquery 中的超链接并绑定事件
- jquery ajax jsonp 跨域实现
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- JQuery.Ajax()的data参数类型
- jquery 选择器,模糊匹配
- How do I reset a jquery-chosen select option with jQuery?重置chosen组件值状态
- Jquery+highchart+ajax
- 7月3日 学习仿腾讯游戏首页小幻灯片jquery插件
- jquery中prop与attr方法差异
- jquery+php实现导出datatables插件数据到excel的方法