我在我的mvc应用程序中使用jquery.cleditor.js
插件用于html编辑器,它运行正常。现在我想将编辑器值发布到控制器操作,但在这里我得到以下异常:
A potentially dangerous Request.Form value was detected from the client
(NewContentPage.PageContents="<STRONG>dafs </STRON...").
如果有人有这个想法,请指导我这样做。
答案 0 :(得分:23)
如果您使用ValidateInput
添加false
属性,则可以提交HTML。请注意,您正在对viewModel
[HttpPost, ValidateInput(false)]
public ActionResult DoStuff(MyViewModel viewModel)
{
//...
}
如果您使用的是.NET 4,则还必须设置<httpRuntime requestValidationMode="2.0" />
在你的web.config文件中。
如果您使用的是MVC 3,则不必将ValidateInput
属性添加到控制器操作中,您可以将AllowHtml
属性添加到viewModel中的属性。
public class MyViewModel
{
public string prop1 { get; set; }
[AllowHtml]
public string prop2 { get; set; }
}
这允许prop2
的HTML,但MyViewModel
的其余部分将被验证。