2014-07-04 63 views
0

我有這個javascript代碼,它必須得到我的viewmodel的列表,但不調用成功函數,調用錯誤函數。 我的錯誤是什麼?Ajax獲取方法錯誤

var id = 5; 
    var request = $.ajax({ 
     url: "/ArizaTalep/Get_List?tid=" + id, 
     type: "POST", 
     dataType: "json", 
     data: "{}", 
     contentType: 'application/json; charset=utf-8', 
     success: function (data) { }, 
     error: function (data) { alert("error!!") } 

    }); 

控制器:

public List<DURUM_HAREKET_ViewModel> Get_List(int tid) 
    { 
     DH_DataModel dmodel = new DH_DataModel(); 
     var ll = dmodel.GetAll().Where(i => i.T_ID == tid).ToList(); 
     return ll; 
    } 
+0

不必返回JSON結果 –

+0

只是返回jsonresult ... –

回答

1
public ActionResult Get_List(int tid) 
{ 
    DH_DataModel dmodel = new DH_DataModel(); 
    var ll = dmodel.GetAll().Where(i => i.T_ID == tid).ToList(); 
    return Json(ll, JsonRequestBehavior.AllowGet); 
} 
1

嘗試修改你的行動:

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult Get_List(int tid) 
{ 
    DH_DataModel dmodel = new DH_DataModel(); 
    var ll = dmodel.GetAll().Where(i => i.T_ID == tid).ToList(); 
    return Json(ll); 
} 

var request = $.ajax({ 
     url: "/ArizaTalep/Get_List", 
     type: "POST", 
     dataType: "json", 
     data: {tid: id}, 
     contentType: 'application/json; charset=utf-8', 
     success: function (data) { }, 
     error: function (data) { alert("error!!") } 

    }); 
1

更改控制器到:

public ActionResult Get_List(int tid) 
{ 
    DH_DataModel dmodel = new DH_DataModel(); 
    var ll = dmodel.GetAll().Where(i => i.T_ID == tid).ToList(); 
    return Json(ll, JsonRequestBehavior.AllowGet); 
} 

說明: 您需要返回Json類型以將其放入View Success函數。

+0

他確實在POST ajax調用他不需要JsonRequestBehavior.AllowGet –