我正在使用 CKEditor ASP.NET MVC
,但是有一个非常奇怪的问题:如果我格式化一些文本(例如应用粗体,使其斜体,或制作一个列表),当出现一些错误并且内容必须回发到 textarea 时,它显示为 HTML 文本 - “ul li” 等等,而不是再次设置样式(粗体、斜体等)。
我在配置中应用了一些选项:
config.htmlEncodeOutput = true; // to avoid text being interpreted as attack
config.enterMode = CKEDITOR.ENTER_BR; // in order not to place tags arround the text
config.basicEntities = false; // do display spaces as they are instead of and so on...
MVC
我尝试了一些类似的内置函数,Server.HtmlDecode
但HttpUtility.Decode
似乎没有任何效果。与其他编辑器一起工作的解决方案MVC
也被接受。
这是 .cshmtl 文件:
@{
ViewBag.Title = "CkEditor";
}
@model HtmlTextEditorsDemos.Models.SimpleModel
<h2>CkEditor</h2>
<script src="~/Scripts/ckeditor.js"></script>
@using (Html.BeginForm())
{
@Html.TextAreaFor(x => x.Text, new { @class = "ckeditor" })
<input type="submit" value="send" />
}
在操作方法中,我什么也不做,只是为了测试目的再次返回数据:
[HttpPost]
public ActionResult Index(SimpleModel model)
{
//model.Text = Server.HtmlDecode(model.Text);
return View(model);
}
SimpleModel 类只是一个测试模型类,只有 1 个属性 - 文本。