我点击了控制器,但是当返回到JavaScript时,返回的JSON未正确格式化以填充选择列表。它返回这个名称为“”System.Data.Entity.DynamicProxies.Course_C81CDD1DDC4D486F471F64D1F95990CD35185 07F0B5BB9F718C0910A56B73D12“”和Value = null为每个课程。走出控制器的数据是好的,并询问这也是正确的疗法EIS有毛病我的javascript代码错误地将JSON返回给客户端MVC
这里是我的控制器:
public JsonResult GetCourses(int facilityId)
{
return Json(GetCoursesSelectList(facilityId), JsonRequestBehavior.AllowGet);
}
private SelectList GetCoursesSelectList(int id)
{
var Courses = db.Courses.Distinct().Where(a => a.FacilityId == id).ToList();
SelectList list = new SelectList(Courses);
return list;
}
这里是我的JavaScript函数:
$("#ddlFacility").change(function() {
var selectedFacility = $(this).val();
if (selectedFacility != null && selectedFacility != '') {
$.getJSON("@Url.Action("GetCourses")", { facilityId: selectedFacility }, function (courses) {
var coursesSelect = $('#ddlCourse');
coursesSelect.empty();
$.each(courses, function (index, course) {
alert(course.Course_Name);
coursesSelect.append($('<option/>', {
value: course.CourseId,
text: course.Course_Name
}));
});
});
}
});
这是什么确实'SelectList list = new SelectList(Courses);'?什么是“SelectList”? – Bizmarck 2013-03-04 02:43:05
这是由FacilityId过滤的数据库中的课程列表。 “1”设施到“多”课程。 – MTL323 2013-03-04 02:45:23