AJAX 显示未定义

维安·奥赫达·加西亚

我有一个包含这些代码的 html 页面,它的作用是显示驻留在数据库中的员工列表

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
<script src="Scripts/jquery-1.10.2.js"></script>
<script>
    $(document).ready(function () {
        var employeeList = $('#EmployeeList');

        $('#DisplayEmp').click(function () {
            $.ajax({
                type: 'GET',
                url: 'api/employees',
                dataType: 'json',
                success: function (data) {
                    console.log(data);
                    employeeList.empty();
                    $.each(data, function (index,val){ 
                        var fullName = val.employee_Name;
                        employeeList.append('<li>' + fullName + '</li>')
                    });
                }
            });
        });
    });
</script>
</head>
<body>
    <input id="DisplayEmp" type="button" value="Display Employees" />
    <input id="ClearEmp" type="button" value="Clear Employees" />
    <ul id="EmployeeList"></ul>
</body>
</html>

我是 jquery 的新手,所以我不太熟悉代码。但是,当我运行该程序时,它显示的undefined是我对它的困惑没有任何想法。我一一检查了我的代码,但仍然没有找到问题所在。

这是我的模型课

 public partial class tblEmployee
{
    public int Employee_ID { get; set; }
    public string Employee_Name { get; set; }
    public string Gender { get; set; }
    public Nullable<int> Age { get; set; }
    public Nullable<int> Department_ID { get; set; }
    public Nullable<int> Salary { get; set; }
}

我有一个控制器,Employees当我通过URI运行 API 时,它会正确显示员工列表。

编辑 1 这是服务器的响应 在此处输入图片说明

编辑 2 这是我的控制器

[HttpGet]
    public HttpResponseMessage GetEmployees(string gender = "All")
    {
        using (EmployeeDBEntities employeeEntity = new EmployeeDBEntities())
        {
            switch (gender.ToLower())
            {
                case "all":
                    return Request.CreateResponse(HttpStatusCode.OK, employeeEntity.tblEmployees.ToList());
                case "male":
                    return Request.CreateResponse(HttpStatusCode.OK, employeeEntity.tblEmployees.Where(e => e.Gender.ToLower() == gender).ToList());
                case "female":
                    return Request.CreateResponse(HttpStatusCode.OK, employeeEntity.tblEmployees.Where(e => e.Gender.ToLower() == gender).ToList());
                default:
                    return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Value for gender must be All,Male or Female" + gender + "is invalid.");
            }
        }
    }

编辑 3:发现它很奇怪,因为你可以看到我的模型类有一个属性,Age所以我尝试使用该属性val.Age,但它仍然显示,undefined但是如果我用val.age小写字母替换它,它会显示正确的数据。但是当我尝试使用它时val.Employee_Nameval.employee_name它仍然显示未定义。

维安·奥赫达·加西亚

终于找到了如何显示我使用的正确值val.employee_Name我降低了大小写Employee有人可以向我解释吗?我会接受它作为答案

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章