我正在使用webgrid并且网格有行。我希望能够删除 我想要的任何一行。我在每一行都有一个垃圾图标供删除。如果我点击 它,javascript函数DeleteTaskFromDb在下面调用
function DeleteTaskFromDb(processCompleteData) {
var url = "@Url.Action("RemoveTaskFromList", "Home")";
$.get(url, { 'objdata': processCompleteData }, function (data) {
//jQuery.removeData(data);
//$('#mainListContent').html(data);
});
}
在这种方法中,我希望能够在同一个控制器中重定向到EmployeeHoursDetail。 这很有效。我将uniqueId硬编码仅用于测试。
public ActionResult RemoveTaskFromList(string objdata)
{
Employeehourstaskinfo getAllTaskSaved = null;
try
{
var stripOffObjectName = JObject.Parse(objdata)["EmployeeTask"];
var cleanedData = JsonConvert.DeserializeObject<Employeetaskdto>(stripOffObjectName.ToString());
getAllTaskSaved = _dtcDataService.RemoveTaskRecordFromDb(cleanedData);
}
catch (Exception ex)
{
logger.Error(ex);
}
return RedirectToAction("EmployeeHoursDetail", "Home", new { uniqueId = 51207 });
}
此方法返回我需要的正确数据,即从上面删除记录后。
public ActionResult EmployeeHoursDetail(Int64 uniqueId = 0)
{
...//code here
...
getEmhourdetails = _dtcDataService.GetEmployeeHoursDetails(uniqueId);
return View(getEmhourdetails);
}
问题:如果我在webgrid上有4条记录并删除1,那么当我的页面重新加载时我仍然可以看到 4条记录。它应该只显示3,因为我删除了一个。我认为我的HTML页面并不令人耳目一新。 我怀疑它的$ .get调用没有刷新页面。
我该如何解决这个问题?