Ser*_*rge 2 c# asp.net-core-mvc asp.net-core
在ASP.NET Core中,我可以将操作设置为链接项a,但是如果将其更改为按钮,则该操作将不再起作用。
将动作/控制器绑定到button点击的正确方法是什么?
<a asp-action="Delete" asp-route-id="@item.Id">remove</a> @*work*@
Run Code Online (Sandbox Code Playgroud)
与
<button asp-action="Delete" asp-route-id="@item.Id">remove</button> @*does not work*@
Run Code Online (Sandbox Code Playgroud)
并不是说它不起作用,它们是具有不同用法的不同Tag助手:
如果将鼠标悬停在上,<a>您将看到的实现AnchorTagHelper,而该<button>实现FormActionTagHelper则应该在中使用,因为它应该在中使用<form>。
因此,为了获得相同的行为,您可以这样做:
<a asp-action="Index">aaaa</a>
<form>
<button asp-action="Index">bbbbb</button>
</form>
Run Code Online (Sandbox Code Playgroud)
但是请注意,按钮显示为formaction="/",而不是显示为href="/",这就是为什么需要将其包装在表单中。第二个也可以这样写:
<form asp-action="Index">
<button type="submit">bbbbb</button>
</form>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2731 次 |
| 最近记录: |