2012-03-09 55 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不會抱怨你無緣無故地定義了一個匿名函數。