MVC JavaScript将模型视为未定义

MVC JavaScript将模型视为未定义,javascript,model-view-controller,undefined,Javascript,Model View Controller,Undefined,正在使用Java脚本函数从模型返回数据以在视图中显示。基本上是尝试验证最终用户输入的日期,以确保它们符合数据库中基于他们选择的某些选项的范围。我有一个在一页上工作的示例: 视图: 这将返回我所关注的日期,在视图中运行良好,通过将其记录到控制台可以看到它获得了正确的数据 另一方面,我有以下看法: 视图: 从控制台的日志中可以看出,这是从模型中获取正确的数据,但值显示为“未定义”。我不明白为什么它只在一个视图上工作而不在另一个视图上工作 $("#validFrom").on(&

正在使用Java脚本函数从模型返回数据以在视图中显示。基本上是尝试验证最终用户输入的日期,以确保它们符合数据库中基于他们选择的某些选项的范围。我有一个在一页上工作的示例:

视图:

这将返回我所关注的日期,在视图中运行良好,通过将其记录到控制台可以看到它获得了正确的数据

另一方面,我有以下看法:

视图:

从控制台的日志中可以看出,这是从模型中获取正确的数据,但值显示为“未定义”。我不明白为什么它只在一个视图上工作而不在另一个视图上工作

 $("#validFrom").on("change", function () {
            var DateFrom = new Date();
            var DateTo = new Date();
            var CustType = $("#CustomType option:selected").val();
        
            var DimID = $("#EmpSel option:selected").val();
            var PostID = $("#PostSel option:selected").val();
            var DivisionID = "@ViewBag.DivID";
            var DepartmentID = "@ViewBag.DptID";
            if (CustType == "Employee")
            {
                $.ajax({
                    url: ApplicationRoot() + "/BIConfigData/HRHierarchyCustom/EmployeeDates",
                    data: { divID: DivisionID, dptID: DepartmentID, dimEmpID: DimID },
                    type: "GET",
                    success: function (empdetail) {

                        var edatefrom = empdetail.ValidFrom;
                        var edateto = empdetail.ValidTo;
                        DateFrom = $("#validFrom").val();
                        DateTo = $("#validTo").val();
 
                        if (DateFrom >= edatefrom && DateTo <= edateto && DateFrom <= DateTo)
                        {
                            $("#SaveBtn").show();
                            $("#DateMsg").empty();
                        }
                        else {
                            $("#SaveBtn").hide();
                            var msg = 'Dates for this employee must be beteen ' + edatefrom + ' and ' + edateto;
                            $("#DateMsg").empty();
                            $("#DateMsg").append(msg);
                        }

                        console.log(empdetail);
                        console.log(edatefrom);
                    }
                })
            }
Controller:

        public JsonResult EmployeeDates (int divID, int dptID, int dimEmpID)
        {
            var Employees = HRHierarchy.GetEmployees(divID, dptID);
            Employees.ToArray();
            var empdetail = Array.Find(Employees, x=>x.DimEmployeeID == dimEmpID);

            return Json(empdetail, JsonRequestBehavior.AllowGet);
        }
      $("#validFrom").on("change", function () {
            var DateFrom = new Date();
            var DateTo = new Date();


            var DivID = $("#SelDiv option:selected").val();
            var DptID = $("#SelDep option:selected").val();
            var TmID = $("#SelTm option:selected").val();

            $.ajax({
                url: ApplicationRoot() + "/BIConfigData/CallSystemQueueOwner/HierarchyDates",
                data: { divID: DivID, dptID: DptID, tmID: TmID },
                type: "GET",
                success: function (hierarchy) {

                    var edatefrom = hierarchy.ValidFrom;
                    var edateto = hierarchy.ValidTo;
                    DateFrom = $("#validFrom").val();
                    DateTo = $("#validTo").val();
                    console.log(hierarchy.ValidFrom);
                    console.log(hierarchy);

                    if (DateFrom >= edatefrom && DateTo <= edateto && DateFrom <= DateTo) {
                        $("#BtnSbt").show();
                        $("#DateMsg").empty();
                    }
                    else {
                        $("#BtnSbt").hide();
                        var msg = 'Dates for this must be beteen ' + edatefrom + ' and ' + edateto;
                        $("#DateMsg").empty();
                        $("#DateMsg").append(msg);
                    }
                }
            })
        public JsonResult HierarchyDates(int divID, int dptID, int? tmID)
        {

           var Hierarchy = HRHierarchy.GetHierarchyDate(divID, dptID, tmID);

            var hierarchy = Hierarchy.ToArray();
         
            return Json(hierarchy, JsonRequestBehavior.AllowGet);

        }