有一个名为 KendeUI 编辑器的选项,encoded
用于配置编辑器是否应提交编码的 HTML 标记。
encoded
默认值为true
如果您不想存储未编码的文本,请在创建编辑器时使用此代码段:
$("#Editor").kendoEditor({
encoded: false
});
但是因为你没有向服务器发送编码文本,所以 Asp.net 请求验证器会启动,它会中止你的请求。
如果您使用的是强类型视图,您可以做的是AllowHtmlAttribute
在您的模型属性上使用:
看法:
@model MyModel
@using(Html.BeginForm("SomeAction", "SomeController"))
{
@Html.TextAreaFor(m => m.Editor)
<input type="submit" value="Save" />
}
<script type="text/javascript">
$(function(){
$("#Editor").kendoEditor({
encoded: false
});
});
</script>
模型:
public class MyModel
{
[AllowHtml]
public string Editor { get; set; }
}
控制器动作
public ActionResult SomeAction(MyModel myModel)
{
//Save to db, etc.
}
您还需要在 web.config 中设置以下内容,否则此属性在 .NET 4.0 中无效:
<httpRuntime requestValidationMode="2.0"/>