如何在ModelState.AddModelError中添加HyperLink

时间:2010-09-15 08:13:51

标签: asp.net-mvc

我想在我的消息中添加超链接,如

ModelState.AddModelError("_FORM", "Please report this error <a href="asdf.aspx">Click Here</a>");

我正在使用asp.net mvc 2.我该怎么做?

1 个答案:

答案 0 :(得分:1)

问题在于ValidationMessageValidationSummary方法在内部使用SetInnerText()方法,该方法会自动对您在模型错误中保存的值进行编码。

就像queen3建议的那样,你必须编写自己的这些方法来克服这个问题。

您可以在the MVC2 source code here中看到原始方法。

tagNameHere.SetInnerText(value)替换为tagNameHere.InnerHtml = value

重要提示:请确保您非常注意这些消息中显示的信息的来源,您现在允许使用html,因此您很容易受到Cross Site Scripting <的影响/ p>