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

怎么将参数传递给$.post的回调函数中

2012-08-13 
如何将参数传递给$.post的回调函数中?jquery中的$.post的原型是$.post(url, data, callback)这里的data是

如何将参数传递给$.post的回调函数中?
jquery中的$.post的原型是
$.post(url, data, callback)

这里的data是要post的参数,而callback就是post之后的回调函数

callback有两个参数,一个是服务器响应的data,另外一个参数是执行结果,成功或者失败。

我有一个需求,如下:


{
  var usetopost
   
  $.post getA{
  usetopost = A;
  }

  $.post B(usetopost){
  提交usetopost的值
  }
}

这里存在一个问题,就是执行了post getA后,回调函数还没执行,所以usetopost还没有赋值,下面的post B就执行了。

我如何能使post getA的回调函数执行后再执行post B?

我用了下面这个方法
  var B

  $.post getA{
  usetopost = A;
  这里还需要使用到B,但是测试的时候,发现这个B是post getA里的局部变量,并不是前面定义的B
  $.post B(usetopost){
  提交usetopost的值
  }
  }

  如果是使用上面这个办法,我的疑问就是如何将前面定义的B传递给post getA,因为$.post的回调函数中的参数只有服务器返回的参数和失败或者成功的标记,所以这个方法就是行不通的。






[解决办法]
用.ajax()方法,执行模式设置为同步模式:

JScript code
$.ajax({    type: 'POST',    url: 'url',    data: 'data',    async: false,    success: callback    ...});
[解决办法]
$.get和$.post都是异步方式的执行。这个在任何一本Jq教程上都会讲到,所以还是用ajax原型
$.ajax,里面的async:false,这样就是同步执行了。。
[解决办法]
$.post("1.php", function(usetopost){
$.post("2.php?xx="+usetopost, function(date){
//......
});
});
//这样必须返回1.php值后才运行2.php

热点排行