C# 从视图调用控制器方法
我觉得这是一个非常简单的问题,但我不知道怎么做 我有一个网页,上面有我在健身房做的每项运动的日志。日期、运动、体重、重复次数等。我可以添加条目。我还想通过按下按钮从索引页中删除一行。我只想在单击“删除”一次后删除该行,并仍保留在索引页中。但是,我不知道如何从索引视图页面调用delete方法 我在最后一列中添加了一些伪代码C# 从视图调用控制器方法,c#,model-view-controller,C#,Model View Controller,我觉得这是一个非常简单的问题,但我不知道怎么做 我有一个网页,上面有我在健身房做的每项运动的日志。日期、运动、体重、重复次数等。我可以添加条目。我还想通过按下按钮从索引页中删除一行。我只想在单击“删除”一次后删除该行,并仍保留在索引页中。但是,我不知道如何从索引视图页面调用delete方法 我在最后一列中添加了一些伪代码 <tbody> @foreach (var logrow in Model.Take(30)) {
<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>
@foreach(模型中的var logrow.Take(30))
{
@logrow.Date.ToString(“dd-MM-yy”)
@洛格罗,运动
@洛格罗,重量
@洛格罗,重复
@洛格罗,集合
@休息时间
@洛格罗,注意
删除
}
如果不在纯ASP.NET MVC中重新加载页面,则无法执行此操作。
使用AJAX来防止这种重新加载
所以你的流量看起来像
- 通过ajax调用服务器删除实体
- 再次调用服务器以获取更新的实体集合
- 重建DOM
public ActionResult ActionName(int id)
{
// delete logic
return View("ViewName", "ControllerName");
}
您可以调用ajax并删除所需的项,从服务器获取更新的列表,以部分视图或Json的形式返回,并将div重新绑定到显示列表的位置。您需要一个按钮(或链接等),如果单击该按钮,它将调用控制器上的方法来删除某些内容?这就是你想要达到的目标吗?你完全正确!读一读《谢谢》。我在写这篇文章之前就试过了。但我写了“HomeController”作为控制器名,而不是“Home”。初学者斗争:)
public ActionResult ActionName(int id)
{
// delete logic
return View("ViewName", "ControllerName");
}