使用ajax的post同步执行(实现方法)
一般我们使用的ajax请求时,都是异步的在结果运行以后,在方法外是得不到参数的,但是使用同步执行的时候是可以返回data的。
ajaxSettings.async参数进行设置,默强调内容认情况下是true,即异步,同步时在方法前设置: $.ajaxSettings.async = false;此时在方法执行完,能return出相应的data。
代码块
/** * 得到列表 */
function flowAtoms(){
//请求接口
var listUrl = getServerUrl('XXXXXXX');
var param = {};
$.ajaxSettings.async = false;
newlist="";
$.post(listUrl,param, function(data){
// 返回的Json转换
var data_json = $.parseJSON(data);
if(data_json.status==200){
// 初始化操作选项
var data=data_json.data;
var funcHtml="";
$.each(data,function(i,v){
funcHtml+=v.name;
})
newlist = funcHtml;
} else {
alert(data_json.message);
}
})
//返回全局变量newlist
return newlist;
} 相关推荐
如果是get则如果有参数会直接跟在地址之后。如果是post请求,向服务器发送POST请求由于解析机制的原因,需要进行特别的处理。因为POST请求和Web表单提交是不同的,需要使用XHR来模仿表单提交。
李永毅 2019-12-26
DreamPig 2019-06-28
maidou0 2013-12-20
homehttp 2013-04-27
AJAXBloger 2012-07-06
chongxiaocheng 2011-08-02