0

由于某些地方未知的原因,我无法显示 CKEditor UI。在一种观点中,它很好用。在另一种观点中,它没有,但使用与有效的代码完全相同的代码。请允许我澄清一下:

我将首先使用数据库,并将 ADO.NET 实体数据模型连接到我正在运行的数据库。然后我制作了一个控制器,让我们用 MVC CRUD 模板将其称为“新闻”,并将其链接到我的模型(数据库)。从这里为我编译视图,在“创建”视图下我将介绍:

      <div class="editor-field">
        @Html.TextAreaFor(model => model.content, new { @class="ckeditor", @id="ckeditorbox"})
        @Html.ValidationMessageFor(model => model.content)
    </div>

其中 model.content 是数据库中的列名(读/写数据库有效,所以这不是真正的问题)。这在我的浏览器中显示为空白。使用 Google Chrome 检查页面,我发现它出于某种原因获得了可见性:隐藏属性。

现在

如果我要制作一个没有模板的新控制器(空 MVC 控制器)并将 Create.cshtml 视图中完全相同的代码发布到我新创建的 Index.cshtml 中,那么 CKEditor 会显示得很好。有人知道这是为什么吗?

我认为这是 ckeditor.js 脚本未初始化的问题,因为初始化位于 _Layout.cshtml 中:

<script src="@Url.Content("addons/ckeditor/ckeditor.js")" type="text/javascript"></script>

但是,将它放在 Create.cshtml 视图中也不起作用。

非常感谢您的建议

4

1 回答 1

0

至于为什么 CKEditor 没有出现在特定页面上,我不确定。然而,对我来说,解决方法是设置:

<script type="text/javascript">
CKEDITOR.replace('x');
CKEDITOR.editorConfig = function (config) {
    ignoreEmptyParagraph = true;
};

在视图中

于 2013-08-28T09:32:00.813 回答