我觉得这是一个非常简单的问题,但我无法弄清楚如何去做。
我有一个网页,其中包含我在健身房进行的每项练习的日志条目。日期,运动,体重,代表等我可以添加条目。我还想通过按下按钮从索引页面删除一行。我只想在单击删除一次后删除该行,并仍然保留在索引页面中。但是,我不知道如何从索引视图页面调用我的删除方法。
我在最后一栏添加了一些伪代码
<tbody>
@foreach (var logrow in Model.Take(30))
{
<tr>
<td>
<h6>@logrow.Date.ToString("dd-MM-yy")</h6>
</td>
<td>
<h6>@logrow.Exercise</h6>
</td>
<td>
<h6>@logrow.Weight</h6>
</td>
<td>
<h6>@logrow.Repetitions</h6>
</td>
<td>
<h6>@logrow.Sets</h6>
</td>
<td>
<h6>@logrow.Rest_time</h6>
</td>
<td>
<h6>@logrow.Notes</h6>
</td>
<td>
<*LINK TO METHOD DELETE_LOG_ROW(logrow.id)* class="btn btn-danger btn-sm">
<span class="glyphicon glyphicon-trash"></span><span class="hidden-xs"> Delete</span>
</a>
</td>
</tr>
}
</tbody>
答案 0 :(得分:1)
Html.ActionLink("Delete", "ActionName", "ControllerName", new { id = logrow.YourID }, null)
在控制器中
public ActionResult ActionName(int id)
{
// delete logic
return View("ViewName", "ControllerName");
}
答案 1 :(得分:0)
如果没有纯ASP.NET MVC中的页面重新加载,则无法执行此操作。 使用AJAX来防止重新加载。
所以你的流程看起来像
通过ajax调用服务器删除实体
再次致电服务器以获取更新的实体集合
重建DOM
答案 2 :(得分:0)
你可以调用ajax并删除你想要的项目并从服务器获取更新列表,并以部分视图或Json的形式返回它,并重新显示你显示列表的div。