2010-08-09 157 views
0

我想從客戶端AJAX/JQuery消息調用C#中的方法。 的客戶端代碼:ajax調用C#方法不起作用

 function TestClickFunc(userId) { 

      $.ajax({ 
       url: "/Users/UpdateEmailDistributionListFlag", 
       type: "POST", 
       data: { "userId" : userId }, 
       success: function (data) { alert(data); } 
      }); 

     } 

,此方法被用正確的參數調用。 但是在我的UsersController中,這個方法沒有被調用;

[AcceptVerbs(HttpVerbs.Post)] 
    public ActionResult UpdateEmailDistributionListFlag(int userId) 
    { 
     // db update 
     return View(); 
    } 

你能明白爲什麼嗎?

+0

檢查Firebug或Fiddler中的HTTP響應。 – SLaks 2010-08-09 13:33:49

+0

先嚐試定期進行POST調用,以確定問題是否出現在AJAX調用或控制器中。 – Dismissile 2010-08-09 14:37:26

回答

0

我發現CDN無法正常工作;

我看不到拼寫錯誤,但它在我使用本地腳本時起作用!

0

檢查您是否擁有帶參數userId的路由。在默認路由中,參數的名稱是id,而不是userId,因此您的方法將不會被找到。

+1

'type:「POST」,' – SLaks 2010-08-09 13:33:27

+0

我認爲我真正的問題是我在JavaScript函數中調用JQuery,並且$沒有被識別。 – arame3333 2010-08-09 14:51:30

+0

你可以通過用jQuery代替$來測試: jQuery.ajax({... – 2010-08-09 15:03:20