使用jquery DataTables插件在表中显示数据时出错

时间:2017-01-20 11:44:30

标签: jquery asp.net-mvc datatables

我正在尝试使用jquery DataTables插件显示表数据。如果我使用HTML表格元素获取数据然后循环数据并最终使用单个DataTables调用它生成标记。我在谈论这个

@Scheduled(cron = "50 0/14 * * * *")

在我的脚本部分

<table id="students" class="table table-bordered table-hover"> <thead> <tr> <th>Name</th> <th>Roll No</th> <th>Result</th> <th>Delete</th> </tr> </thead> <tbody> @foreach(var student in Model) { <tr> <td>@Html.ActionLink(student.Name, "Edit", "Students", new { id = student.Id }, null)</td> <td>@student.RollNo</td> <td>@student.Result</td> <td> <button data-student-id="@student.Id" class="btn-link js-delete">Delete</button> </td> </tr> } </tbody> </table> //撰写本声明

但是如果我尝试使用这种方法生成标记,它就不起作用。 Javascript符合框弹出“不知道参数rollNo”...并且第一行仅在名称列中显示“未定义”,“删除”列中显示“删除”

$("#students").DataTable();

Here's Ajax响应的摘录。

我在哪里做错了?

1 个答案:

答案 0 :(得分:0)

您应该在ajax.dataSrc属性中指定一些内容。默认值为“data”,但您应指定包含数据的属性的名称。例如,如果ajax响应是这样的:

{'result':[
    {    rollNo: ...
         name: ... 
         ...
    },
    {    rollNo: ...
         name: ... 
         ...
    },
    ...
]}

然后ajax.dataSrc应为'result'。

<强>更新

看到你的ajax回复。数据键似乎以大写字母开头。尝试使用columns.data(区分大小写IIRC)

中的第一个字母大写