我想使用 DataTables Editor,但我想完全控制回发而不是让 Editor-Server 处理它。有没有办法做到这一点?我能够在客户端的 Ajax 中指定 url,它确实回发到控制器,唯一的问题是我不知道如何从调用中获取数据。这是 Ajax 部分:
$(document).ready(function () {
editor = new $.fn.dataTable.Editor({
ajax: ({
url: "/../AnyController/Update",
dataType: "json",
contentType: "application/json",
type: 'POST'
}),
formOptions: {
inline: {
onBlur: true,
submit: 'all'
}
},
table: "#timetracker",
fields: [
{
label: "Date1:",
name: "Date1"
},
{
label: "Comment 1:",
name: "Comment1",
type: "textarea"
}
]
});
这是控制器方法:
[HttpPost]
public JsonResult Update(EditorReturnData wtd)
{
return Json(wtd);
}
我尝试过使用各种其他方法签名,但 wtd 的值始终为空。我只是通过传递 Json 数据来加载表没有问题,但是如何从数据表编辑器接管更新过程却让我望而却步。
我有一个更新。我无法弄清楚 Get、Post 和 Put 如何都使用相同的控制器方法,并且该方法不带参数,即使是 Post 和 Put。最后我发现 Editor 正在传递 Header 中的数据,并且可以使用 Request.Body 访问它。从那里它必须是执行实际更新的 Datatables dll。