【问题标题】:two instances of tinymce mvc c#tinymce mvc c#的两个实例
【发布时间】:2013-11-22 13:25:20
【问题描述】:

TinyMCE 视图模板

<script src="@Url.Content("~/Scripts/tinymce/tiny_mce.js")" type="text/javascript"></script>

<script type="text/javascript">
    (function () {
        tinyMCE.init({
            mode: "textareas",
            //elements: "engRichMCE,araRichMCE",
            elements: "@ViewData.TemplateInfo.GetFullHtmlFieldName(string.Empty)",
            theme: "simple",
            height: "300",
            width: "400",
            verify_html: false,
            theme_simple_resizing: true,
            content_css: "@Url.Content("~/Content/Site.css")",
            convert_urls: false
        })
    })();
</script>

@Html.TextArea(string.Empty, /* Name suffix */
    ViewData.TemplateInfo.FormattedModelValue /* Initial value */
)

型号

 [UIHint("tinymce_full_compressed"), AllowHtml]
 public string eng_html { get; set; }

 [UIHint("tinymce_full_compressed"), AllowHtml]
 public string ara_html { get; set; }

查看

@Html.EditorFor(model => model.eng_html, new { id = "engRichMCE" })
@Html.ValidationMessageFor(model => model.eng_html)

@Html.EditorFor(model => model.ara_html, new { id = "araRichMCE" })
@Html.ValidationMessageFor(model => model.ara_html)

问题是在我看来只有一个 tinyMCE 实例正在加载,我需要这两个字段来获取 tinyMCE 编辑器,有什么建议吗?

更新 到目前为止我所做的,查看 tinyMCE 文档, http://www.tinymce.com/wiki.php/Configuration3x:mode 模式值可以是精确的、textareas 或 specific_textareas。如果在init函数中设置mode="textarea",所有的textareas都会转换成tinMCE...这不是我需要的。

同样,复制包含 tinyMCE 的局部视图也不起作用。

在 tinyMCE 初始化函数中使用 mode="exact"elements="araRichMCE,engRichMCE" 并在我的视图中添加 ID 也不起作用?

【问题讨论】:

  • 在 Chrome 或 Firefox 中加载此站点并检查控制台;可能有一些 JavaScript 错误。
  • JS 错误:'TypeError: q is not a constructor'
  • 如果您使用 tinymce 的 JavaScript,您会发现我猜测的该错误的一些上下文。对于我个人而言,要帮助您,您将不得不向我提供有关该错误的更多背景信息。这里的其他一些人可能更了解该控件的 JS。

标签: c# asp.net-mvc tinymce


【解决方案1】:

已解决

更新包 TinyMCE 下载最新 4.0.11

在我的模型中删除了这个

[UIHint("tinymce_simple"), AllowHtml]

并保留

[DataType(DataType.MultilineText)]

在我的编辑视图页面edit.view

<script src="@Url.Content("~/Scripts/tinymce/tinymce.min.js")" type="text/javascript"></script>

    <script type="text/javascript">
        (function () {
            tinyMCE.init({
                selector: "textarea#eng_html,textarea#ara_html",
                content_css: "@Url.Content("~/Content/Site.css")",
            })
        })();
    </script>

在视图中,tinyMCE 将选择我的两个包含文本区域的 html

谢谢大家

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-21
    • 1970-01-01
    • 2020-02-13
    • 2011-05-04
    • 1970-01-01
    • 2014-09-29
    • 1970-01-01
    相关资源
    最近更新 更多