2017-03-13 38 views
-1

我試圖做一個ajax請求到我的控制器在C#中,但它永遠不會到達控制器 - 我得到一個類型錯誤說「查詢是未定義的」。AJAX TypeError:查詢未定義

這裏是我的AJAX腳本:

$(document).ready(function() { 
    $.ajax({ 
     url: '/Account/GetAllGamesWithRoles', 
     type: 'POST', 
     data: {}, 
     success: function (games) { 
      debugger; 
      Games = games; 

      BuildGames(games); 
     }, 
     error: function() { 
     } 
    }); 
}); 

這裏是我的控制器操作:

[HttpPost] 
public ActionResult GetAllGamesWithRoles() 
{ 
    var result = MockGames(); 

    return new JsonResult{ Data = result, MaxJsonLength = Int32.MaxValue}; 
} 
+0

顯示的代碼。你是否將其定義爲[HTTPPOST]? –

+0

刪除dataType:「JSON」,然後嘗試。在Games =遊戲中給出一個斷點;並檢查。也請嘗試以下網址:「/ Account/GetAllGamesWithRoles」, –

+0

使用我使用的代碼進行編輯。仍然沒有運氣:-( – Jannik

回答

0

爭取你的行動 「GetAllGamesWithRoles」 這

$(document).ready(function() { 
    alert('called before ajax'); 
    $.ajax({ 
     url: "/Account/GetAllGamesWithRoles",   
     type: "POST", 
     data: {'test':'testcall'}, 
     success: function (data) {    
      Games = data.Data; 
      BuildGames(Games); 
     }, 
     error: function (request, textStatus, errorThrown) { 
      alert("Status: " + textStatus + "Error: " + errorThrown); 
     } 
    }); 
}); 


[HttpPost] 
public JsonResult GetAllGamesWithRoles(string test) 
{ 
    var result = MockGames(); 

    return Json{ Data = result, JsonRequestBehavior.AllowGet}; 
} 
+0

確切同樣的錯誤恐怕:-( – Jannik

+0

我找到了錯誤,我引用了一個jQuery自動完成腳本,顯然搞砸了ajax調用!謝謝你的努力!:-D – Jannik

相關問題