如何将$ .post的返回值赋给变量

时间:2012-04-09 03:57:04

标签: jquery .post

我的代码是

data1 = "";

$('#send').click(function(){
   var post = $(this).val();

   $.post('post.php',{post:post},function(data){
      data1 = data;
   });

   $(this).val(data1);
});

似乎在执行$ .post函数之前执行函数.click的所有进程。任何人都可以帮助我。

1 个答案:

答案 0 :(得分:7)

.post()是异步的,这意味着它在后台运行,并且不会阻止后面的函数执行。在设置data1 = data之前,已调用$(this).val()

尝试编码data函数回调中依赖于$.post()的所有内容:

$('#send').click(function() {
  $.post('post.php', {
    post: $(this).val()
  }, function(data) {
    $('#send').val(data);
  });
});