2013-01-03 74 views
0

我使用以下語法從ASP頁調用控制器方法。從ajax調用控制器方法(ASP MVC3)方法不起作用

$.ajax({ 
      url: 'ControllerName/MethodName', 
      type: 'POST', 
      contentType: 'application/json;', 
      data: JSON.stringify({ param: param1}), 
      success: function() { 
       alert("Success!!!"); 
      }, 
      error: function() { 
       alert("Failed!!!"); 
      } 
     }); 

我有兩個ASP頁面(視圖),都具有相同的控制器。如果我從第一頁調用上述方法,則控制器方法會成功調用。但是如果從第二頁調用相同的方法,我會收到警告消息「失敗」。此外,我嘗試使用GET類型,嘗試與其他控制器方法和所有。第二種觀點將不會被調用。任何人都可以幫助我解決問題嗎?我是MVC的新手。

+0

失敗請求中返回的HTTP代碼是什麼? –

+0

把這個錯誤:函數(jqXHR,異常)上的錯誤函數和打印jqXHR – jose

+0

我認爲你的控制器不發送json數據。如果它以'return View();返回爲''返回Json(true);' –

回答

0

既然你的ajax期望從你的Controller方法得到JSON數據的結果,你有沒有返回Json(data,JsonRequestBehavior.AllowGet)?

0

嘗試改變內容類型:

url: @Url.Action("action"), 

作品在我的例子:使用MVC幫手像

contentType: 'application/json; charset=utf-8' 

和/或指定的網址。希望它會有所幫助。