【发布时间】:2017-03-01 21:43:18
【问题描述】:
我的模特:
ClassAllocate:Id、DepartmentId、CourseId、RoomId、DayId、StartTime、EndTime
课程:Id、CourseCode、CourseName、DepartmentId
房间: ID、房间号
日: ID、日名
我正在尝试按部门 ID 从视图页面中的“ClassAllocates”表中搜索课程,并尝试仅显示这些课程安排/分配详细信息。
我正在使用 JSON 将列表从控制器发送到视图。我需要从 JsonResult 函数发送多个列表列表。我可以发送它们(我尝试发送 2 个列表),但是我无法显示它们。它在我的尝试中显示 [object Object] 或什么都没有或未定义。
我正在查看我的控制器功能和 Javascript:
第一:控制器功能
public JsonResult GetCourseIdListByDepartmentId(int departmentId)
{
var x = db.ClassAllocates.DistinctBy(m => m.CourseId).Where(m => m.DepartmentId == departmentId).ToList();
var r = db.ClassAllocates.DistinctBy(m => m.RoomId).Where(m => m.DepartmentId == departmentId).ToList();
var all = new [] {x,r}.ToList();
return Json(all, JsonRequestBehavior.AllowGet);
}
第二:查看Java脚本
<script>
$("#DepartmentId").change(function () {
var dptId = $("#DepartmentId").val();
//alert(dptId);
$(".RowClass").empty();
var json = {
departmentId: dptId
};
$.ajax({
type: "POST",
url: '@Url.Action("GetCourseIdListByDepartmentId", "ClassAllocates")',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(json),
success: function (data) {
$.each(data, function (key, value) {
$(".table2").append(
'<tr class="RowClass">' +
'<td>' + value.Couse + '</td>'
+ '<tr>');
});
}
});
});
这会导致: 未定义
我需要 CourseCode、CourseName 和 RoomNumber
【问题讨论】:
标签: javascript asp.net json linq