Javascript jquery datatables asp.net MVC的类属性
在看过大量代码示例后,我无法使用Jquery Datatables和MVC创建简单的datatable 我弄错了 我的控制器是这个Javascript jquery datatables asp.net MVC的类属性,javascript,jquery,asp.net-mvc,datatables,Javascript,Jquery,Asp.net Mvc,Datatables,在看过大量代码示例后,我无法使用Jquery Datatables和MVC创建简单的datatable 我弄错了 我的控制器是这个 public class DataTableController : Controller { // GET: DataTable public ActionResult Index() { return View(); } public ActionResult GetData() {
public class DataTableController : Controller
{
// GET: DataTable
public ActionResult Index()
{
return View();
}
public ActionResult GetData()
{
var registros = new List<PruebaClass>();
var pruebaClass1 = new PruebaClass
{
Race = "Aliens",
Year = 1990,
Total = 50
};
var pruebaClass2 = new PruebaClass
{
Race = "MArcianos",
Year = 200,
Total = 20
};
registros.Add(pruebaClass1);
registros.Add(pruebaClass2);
var resultado = Json(new { aaData = registros.ToList() }, JsonRequestBehavior.AllowGet);
return resultado;
}
public class PruebaClass
{
public string Race { get; set; }
public int Year { get; set; }
public int Total { get; set; }
}
}
我可以访问ActionResult,我的视图显示了两行,但每个单元格的内容都是空的。我从数据源“0”获取了awfull error Datatables warning(表id='miTable')请求的未知参数“0”
我很确定问题出在源代码(可能是JSON格式)和列名映射上,但我不知道是什么。
有什么帮助吗 我真丢脸。最后,我将列定义与jquery文件中的一个选项进行了匹配。我知道我错过了什么。我所需要做的就是使用“aocolumns”和“mDataProp” 这段代码解决了所有问题
$(document).ready(function () {
$('#miTable').DataTable(
{
"sAjaxSource": "../DataTable/GetData",
"aoColumns": [
{ "mDataProp": "Race", "autoWidth": true },
{ "mDataProp": "Year", "autoWidth": true },
{ "mDataProp": "Total", "autoWidth": true }
]
});
});
尝试使用索引而不是名称:
“数据”:0
,“数据”:1
等。您可能仍然存在问题,因为您没有返回要使用的数据表的任何行计数值,但让我们来处理第一个错误。我对列定义和数据定义使用了错误的属性。我感到羞耻:D
$(document).ready(function () {
$('#miTable').DataTable(
{
"sAjaxSource": "../DataTable/GetData",
"columns": [
{ "Data": "Race", "autoWidth": true },
{ "Data": "Year", "autoWidth": true },
{ "Data": "Total", "autoWidth": true }
]
});
});
$(document).ready(function () {
$('#miTable').DataTable(
{
"sAjaxSource": "../DataTable/GetData",
"aoColumns": [
{ "mDataProp": "Race", "autoWidth": true },
{ "mDataProp": "Year", "autoWidth": true },
{ "mDataProp": "Total", "autoWidth": true }
]
});
});