加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – 验证摘要消息中的链接

发布时间:2020-12-16 04:20:59 所属栏目:asp.Net 来源:网络整理
导读:是否可以在验证摘要消息中放置 HTML链接?例如,我想在有验证错误的情况下将链接放到另一个页面: @Html.ValidationSummary(False,"read a href=""anotherpage.html""more/a") 要么 @Html.ValidationSummary(False,"read " Html.ActionLink("more","helpforer
是否可以在验证摘要消息中放置 HTML链接?例如,我想在有验证错误的情况下将链接放到另一个页面:
@Html.ValidationSummary(False,"read <a href=""anotherpage.html"">more</a>")

要么

@Html.ValidationSummary(False,"read " &
    Html.ActionLink("more","helpforerror").ToHtmlString)

但是在浏览器中,标签被转义,因此它不会形成链接.

解决方法

我知道您已经接受了答案,但我认为我的解决方案更简单,如果您想要添加现有验证摘要的链接,则需要更少的重写.

您需要在验证邮件中添加{0}类型format item,如下所示,将由您的链接替换.

ModelState.AddModelError("","Some error message with a link here {0}.");

然后在您的视图中调用您的验证摘要,如下所示:

@string.Format(Html.ValidationSummary().ToString(),Html.ActionLink("Click Here","Action_To_Link_To")).ToHtmlString()

在这种情况下,我使用了一个扩展方法,我添加到字符串对象.ToHtmlString(),它基本上只是将字符串转换为HtmlString,防止任何标记被转义.它看起来像这样:

public static HtmlString ToHtmlString(this String str)
{
    return new HtmlString(str);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读