在我的mvc razor视图中,我有一个带有webgrid数据的局部视图,我需要添加一个actionlink来删除该行数据,这就是我所做的: 这是javascript函数: function delMeal(pid){
if (confirm("Do you want to delete Meal: " + pid)) {
var data = { 'MealID': pid }
$.post('/Travel/DeleteMeal', data,
function (data) {
if (data == true)
location = location.href;
else
alert("Could not delete");
});
}
}
</script>
这是控制器方法:
public JsonResult DeleteMeal(Int32 productId)
{
//NWDataContext db = new NWDataContext();
Meal product = db.Meals.Where(x => x.MealID == productId).FirstOrDefault();
db.Meals.Remove(product);
db.SaveChanges();
return Json(true, JsonRequestBehavior.AllowGet);
}
这是在webgrid上使用删除函数调用的行 @ Html.ActionLink(“删除”,“DeleteMeal”,“旅行”,新{onclick =“delMeal(”+ item.MealID +“)”})
上面的代码在动作链接中不起作用,因为我在其中添加了方法(“DeleteMeal”),但是如果我删除该方法,则调用javascript函数,但是方法(“DeleteMeal”)不调用。 任何人都可以帮助我在@ Html.ActionLink上面的代码工作吗?非常感谢,
答案 0 :(得分:0)
试试这个:
$.ajax({
type: "POST",
url: '/Travel/DeleteMeal'
data: {
productId:pid
},
dataType: "json",
success: function(json) {
if(!json.error)
$("#grid").load('Url which Send data to This grid');
}
error: errorFunc
});
然后看到您的DeleteMeal操作被调用或未更新。