【问题标题】:What is the Asp.Net Core TagHelper equivalent of Html.ActionLink with script什么是带有脚本的 Html.ActionLink 的 Asp.Net Core TagHelper 等效项
【发布时间】:2018-08-02 15:28:31
【问题描述】:

我想在删除前提示一个确认对话框。我在这里找到了this 答案,效果很好

@Html.ActionLink(
          "Delete",
          "Delete",
          new { id = post.OriginalPost.ID },
          new { onclick = "return confirm('Are you sure you wish to delete this post?');" });

但正如我在核心一中所理解的那样,应该避免使用 ActionLinks。那么有没有任何标签助手或不同的方法来做到这一点?

【问题讨论】:

    标签: c# asp.net-core asp.net-core-mvc asp.net-core-tag-helpers


    【解决方案1】:

    您通常会使用AnchorTagHelper:

    <a asp-action="Delete" asp-route-id="@post.OriginalPost.ID" 
        onclick="return confirm('Are you sure you wish to delete this post?');">Delete</a>
    

    【讨论】:

    • 简单地说,标签助手只是重写 HTML。对于锚标签之类的东西,Razor 正在寻找像 asp-action 这样的属性来通过标签助手提供它,最终返回具有有意义的更改/添加的相同标签,例如添加具有正确的 href 属性网址。其他属性只是顺其自然,所以如果你在标签助手中添加类似onclick的东西,你最终会在实际渲染的锚标签上得到相同的onclick
    猜你喜欢
    • 2019-02-12
    • 2019-10-22
    • 2018-01-16
    • 1970-01-01
    • 1970-01-01
    • 2019-10-23
    • 1970-01-01
    • 2019-11-07
    • 1970-01-01
    相关资源
    最近更新 更多