gpt4 book ai didi

asp.net-mvc - 使用 jqGrid 删除 ASP.NET MVC 中的多条记录

转载 作者:行者123 更新时间:2023-12-03 03:32:36 24 4
gpt4 key购买 nike

如何在 jqGrid 中启用多重选择,并允许用户使用 ASP.NET MVC Controller 删除所有选定的行?
我已将删除 url 属性设置为/Controller/Delete 方法,如果选择一条记录,则效果很好。但是,如果选择了多个记录,它会尝试将空值发送回需要整数 id 的 Controller 。

最佳答案

可以,但你必须为其编写代码:

deleteSelected: function(grid) {
if (!grid.jqGrid) {
if (console) {
console.error("'grid' argument must be a jqGrid");
}
return;
}
var ids = grid.getGridParam('selarrrow');
var count = ids.length;
if (count == 0) return;
if (confirm("Delete these " + count + " records?")) {
$.post("DeleteMultiple",
{ ids: ids },
function() { grid.trigger("reloadGrid") },
"json");
}
}

[HttpPost]
public ActionResult DeleteMultiple(IEnumerable<Guid> ids)
{
if (!Request.IsAjaxRequest())
{
// we only support this via AJAX for now.
throw new InvalidOperationException();
}
if (!ids.Any())
{
// JsonError is an internal class which works with our Ajax error handling
return JsonError(null, "Cannot delete, because no records selected.");
}
var trans = Repository.StartTransaction();
foreach (var id in ids)
{
Repository.Delete(id);
}
trans.Commit();
return Json(true);
}

关于asp.net-mvc - 使用 jqGrid 删除 ASP.NET MVC 中的多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1748402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com