2012-03-09 57 views
1

我有一个旨在通过刷新阿贾克斯div的HTML页面上的链接。jQuery的成功回调不调用

的HTTP GET成功。我在控制器中触发了一个断点(这是一个ASP.Net MVC 3应用程序),并且我可以在IE9 Network Profiler中看到,当我单击链接时返回一个HTTP状态200,并且Response Body与我会期待的。

但是,我的jQuery success方法没有被调用。

下面的代码:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#add').click(function (e) { 
      alert('I DO display'); 
      $.get('/Home/MyController?id=1&add=True&sub=3'), function (data) { 
       alert('I do not display'); 
       $('#analysis').html(data); 
      }; 
      e.preventDefault(); 
     }); 
    }); 
</script> 

我缺少什么?

+0

已经更新,表明'$ .get'之前的JavaScript执行。 – 2012-03-09 02:35:28

回答

1

看起来它只是一个语法问题。试试这个:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#add').click(function (e) { 
      alert('I DO display'); 
      $.get('/Home/MyController?id=1&add=True&sub=3', function (data) { 
       alert('I display now!'); 
       $('#analysis').html(data); 
      }); 
      e.preventDefault(); 
     }); 
    }); 
</script> 

该函数没有作为参数发送,因为您太早关闭了get调用的括号。然后,Javascript不会抱怨你无缘无故地定义了一个匿名函数。