【发布时间】:2019-08-21 04:18:30
【问题描述】:
我正在使用 ajax 将数据库中的对象列表加载到数据表中。调试时,我的MVC动作结果好像查询数据没问题,但是datatable列显示为null
我尝试在 MVC 操作中返回列表之前对其进行序列化,但它没有解决问题
// Code from View
<table class="table table-striped" id="codetable">
<thead>
<tr>
<td>Student Number</td>
<td>Student</td>
<td>Faculty</td>
<td>Department</td>
<td>Program</td>
<td>Code</td>
</tr>
</thead>
<tbody>
</tbody>
</table>
<script>
$(document).ready(function () {
$("#codetable").DataTable({
processing: true,
serverSide: true,
info: true,
ajax: {
url: '@Url.Action("GetVoters", "Index")',
dataSrc: ""
},
Columns: [
{ "data": "StudentNumber" },
{ "data": "Name" },
{ "data": "Faculty" },
{ "data": "Department" },
{ "data": "Program" },
{ "data": "Code" }
]
});
});
</script>
//Code from Controller
public JsonResult GetVoters()
{
List<vt> stud = (from student in _context.Voters
select new vt
{
StudentNumber = student.StudentNumber,
Name = student.Name,
Faculty = student.Faculty,
Department = student.Department,
Program = student.Program,
Code = student.Code
}).Take(100).ToList();
var js = new System.Web.Script.Serialization.JavaScriptSerializer();
var result = js.Serialize(stud);
return Json(result, JsonRequestBehavior.AllowGet);
}
public class vt
{
public string StudentNumber { get; set; }
public string Name { get; set; }
public string Faculty { get; set; }
public string Department { get; set; }
public string Program { get; set; }
public string Code { get; set; }
}
我希望表格显示列表中的各个列,但会引发此错误“DataTables 警告:表格 id=codetable - 请求第 0 行、第 1 列的未知参数 '1'...”并仅在第一列(因此每行一个字符)。其余列显示为空
【问题讨论】:
-
完成您的代码。 Atction、ajax、数据表渲染
标签: c# jquery asp.net-mvc datatables asp.net-ajax