问题描述: 在ASP.NET MVC 5中使用datatables时,表行不会更新并发送详细信息。
解决方法: 要解决这个问题,你可以按照以下步骤进行操作:
确保你已经引用了正确的datatables库。你可以在https://datatables.net/网站上下载和引用最新版本的datatables。
在你的视图中,添加一个用于显示表格的HTML元素,例如:
Name
Email
Action
$(document).ready(function() {
var table = $('#myTable').DataTable({
ajax: {
url: '/Home/GetData', // 用于获取表格数据的控制器方法的URL
type: 'GET',
dataType: 'json'
},
columns: [
{ data: 'Name' },
{ data: 'Email' },
{
data: null,
render: function(data, type, row) {
return '';
}
}
]
});
});
function editRow(id) {
// 编写代码以获取选定行的详细信息并将其发送到服务器进行更新
}
public ActionResult GetData()
{
// 编写代码以从数据库或其他数据源获取表格数据
var data = new List(); // 假设User类表示表格的数据模型
// 假设你从数据库获取了用户数据并填充到data变量中
return Json(data, JsonRequestBehavior.AllowGet);
}
[HttpPost]
public ActionResult UpdateRow(User user)
{
// 编写代码以更新选定行的信息
// 假设你从页面中获取了用户输入的新数据并将其应用到user对象中
// 假设你将更新后的数据保存到数据库中
return Json(new { success = true });
}
通过以上步骤,你可以在datatables中显示表格数据,并为每一行添加一个"Edit"按钮。当用户点击"Edit"按钮时,调用editRow函数,并将选定行的id作为参数传递给它。在editRow函数中,你可以编写代码来获取选定行的详细信息,并将其发送到服务器进行更新。
请注意,上述示例中的代码是基于假设的情况,并且可能需要根据你的实际需求进行适当的修改。