我已經搜索並看到了許多解決方案,但我仍然沒有取得任何進展。我在控制檯中沒有得到任何錯誤,並且從ajax請求中得不到任何回報。從ASP.NET中的操作方法檢索Json對象
下面是操作方法的代碼:
[HttpGet]
public ActionResult GetEmployees()
{
AWEmployeeModel aw = new AWEmployeeModel();
aw.ID = 0;
aw.Name = "Selena";
aw.Position = "Cashier";
aw.Department = "Finance";
return Json(aw,JsonRequestBehavior.AllowGet);
}
這裏是我的控制器中我的Ajax調用:
EmpApp.controller("AWEmpControl", function ($scope) {
loadEmployees();
function loadEmployees() {
$.ajax({
url: "/AWEmployee/Index/GetEmployees",
method: "GET",
success:function (response) {
$scope.employees = response["Name"];
}
});
}
});
我也有希望的頁面上的NG指示:
<div class="container" ng-app="AWEmpApp" ng-controller="AWEmpControl">
{{employees}}
</div>
我測試過,看看這些腳本是否可以正常工作,方法是分配$ scope.employees =「Hello ...」;並沒有問題,所以我知道它與腳本加載無關....可能是什麼問題?我已經確定將請求描述爲GET並返回一個JSON對象。我錯過了什麼嗎?
在此先感謝。
編輯
我檢查了Firefox的控制檯和回來解析錯誤:沒有XML的位置找到.......
,我發現奇怪,因爲服務器返回一個JSON對象,所以我取代了AJAX方法有以下:
function loadEmployees() {
$http.get('/AWEmployee/Index/GetEmployees')
.then(function(response) {
$scope.employees =response;
});
};
現在的反應是調用它的頁面(索引)的HTML數據,而不是JSON對象!我假定在this post中建議的通信之間發生了一些事情。
我曾嘗試用$ scope.apply包裝,因爲你提到,但仍然沒有解決它。我添加了錯誤回調選項,提醒我是否被調用,並且確實如此。所以我決定在問題的編輯中提到。 – Luv2Learn