2016-03-01 56 views
-3

我是新來的MVC,並嘗試在我的網站的Ajax功能。每當我運行我的ajax函數時,它會返回500個警報。 這是我的控制器代碼500錯誤來我的AJAX功能

[HttpPost] 
public ActionResult JsonNewsfeed(int id) 
{ 
    var db = new dekhosaleEntities1(); 
    sale s = db.sales.First(m => m.sale_id == id); 
    List<sale> sale1 = db.sales.ToList(); 
    saleviewmodel model = new saleviewmodel 
    { 
     currentsale = s, 
     Sales = sale1 
    }; 
    return Json(model); 
} 

這是我的jQuery的AJAX功能

$('.b1').click(function() { 
    $.ajax({  
     type: "POST", 
     dataType: 'json', 
     url: '@Url.Action("JsonNewsfeed", "Home")', 
     data:"{ id: 5}", 
     success: function (data) { 
      alert(data); 
     }, 
     error: function (response) { 
      alert(response.status); 
     } 
    }); 
}); 
+0

'data:{id:5},'WIthout'「' –

+0

仍然給出相同的錯誤 –

+0

500錯誤意味着它是您的服務器上的問題。檢查你的服務器日誌尋找線索。 –

回答

0

嘗試糾正你的AJAX請求...... 像URL ...(網址:「Url.Action(」 JsonNewsfeed」, 「家」)「)
數據(數據:{ID:ID})(如果需要的支票,太)

這裏是參考..

文檔:http://api.jquery.com/jquery.ajax/

+0

它似乎有一個URL的問題,但我似乎無法弄清楚。 –

+0

嘗試使用相同的URL,而不@ ..... –

+0

是的嘗試像這樣...「/首頁/ JsonNewsFeed」 :) –

0
public ActionResult JsonNewsfeed(int id) 
{ 
    try 
    { 
     ....logic here.... 
     return Json(data, JsonRequestBehavior.AllowGet); 
    } 
    catch (Exception ex) 
    { 
     //TODO: log exception 
     return new HttpStatusCodeResult(401, ex.Message); 
    } 
} 

你也可以回到這樣,而不是:

return Content(jsonObject.ToString(), "application/json"); 

return Content("Your message",... 

然後在你的Ajax調用成功更改爲:

$.ajax({ 
     type: "POST", 
     dataType: "json", 
     contentType: "application/json; charset=utf-8", 
     url: "/someDir/someAjaxControllerMethod", 
     data: jStr, 
     success: function (json) { 
      ...do something... 
      var s = JSON.stringify(json); 
      alert(s); 
     }, 
     error: function (event) { 
      alert(event.statusText); 
     } 
    }); 
+0

現在警告稱未發現 –

+0

嘗試用URL和您要發送的數據搞亂,您使用它的方式可能有些不正確。而不是使用「@ Url.Action(‘JsonNewsfeed’,‘家’)」喜歡嘗試也許「/首頁/ JsonNewsFeed」,您可能需要更動任何字符串化或解析您所使用的Ajax調用發送數據。 – Blindsyde

+0

是的,網址有問題。謝謝:) –