【问题标题】:TinyMce using ASP.NET MVC 3 With Razor View Engine - loads but does not displayTinyMce 使用带有 Razor 视图引擎的 ASP.NET MVC 3 - 加载但不显示
【发布时间】:2011-09-26 14:25:05
【问题描述】:

我有一个使用 TinyMce jQuery 插件的简单表单。当我加载页面时,TinyMce 应该用他的编辑器替换我的 textarea,但这不会发生。查看生成的 html,我的 textarea 在那里(可见性设置为隐藏),但 TinyMce 没有创建 iFrame 对象。 TinyMce 对象存在,但 activeEditor 为空。好像我没有初始化它,但是我完全按照示例代码如下:

//这里是我加载脚本的地方

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

//这里是我的文本区

<textarea id="tinymceId" name="content" class="tinymce" rows="1" cols="50" style="width:100%;" ></textarea>

//这是我初始化它的脚本代码

$(document).ready(function () {
    $('#tinymceId').tinymce({
       doctype: '<!DOCTYPE html>',
       editor_selector: "tinymce",
       convert_urls: false,
       mode: "textareas",
     });
});

【问题讨论】:

  • 任何 javascript 错误?去掉“textareas”之后的最后一个逗号。
  • @Jack,只有 IE
  • 可能,但正确的语法永远不是坏事。
  • 对不起 - 谢谢。在我的代码中实际上很好。当我发表这篇文章以简化事情时,我删除了一些其他选项,并忘记首先删除“,”。它在我的实际代码中被删除了。没有 javascript 错误 - 看起来一切正常,然后什么也没有出现。
  • 我也有类似的问题;要么出错,要么编辑器没有出现。原来tinymce_jquery_full.cshtml有问题安装nuget pkg时jquery.tinymce.js安装到“~/Scripts/tinymce/tiny_mce.js”但是tinymce_jquery_full.cshtml中的引用是“~/Scripts/ tinymce.3.4.5/jquery.tinymce.js”。不得不在几个地方修改它并调整 content_css 的路径,然后它就栩栩如生了。现在可能不相关,但我所做的更改是为了帮助其他人:-)

标签: jquery asp.net-mvc asp.net-mvc-3 razor tinymce


【解决方案1】:

嗯,现在最有名的炫酷方式是使用 Nuget。

我为 TinyMCE 编写了一些局部视图模板。 (我也会在更新时将 TinyMCE 推送到提要)

以下文章将引导您完成该过程:

TinyMCE HTML Text Editior & ASP.NET MVC - Setting It Up Has Become Easy With Nuget

【讨论】:

  • 在这种情况下使用分部总是很好的。
  • 我正在尝试使用您从 NuGet 下载的示例代码,但也无法正常工作。我刚刚创建了一个新项目,向其中添加了 TinyMceJquerySample 包并进行了您文章中概述的更改,当我运行它时,当我逐步执行 tinymce 构造函数代码时,我得到 "$("textarea.tinymce").tinymce 是不是构造函数最后一行的函数 -(media_external_list_url : "lists/media_list.js")。我所做的唯一偏差是在@Html.TextArea - 我收到一个运行时错误,说名称不能是空字符串,所以我给它命名为“tinymce”。有什么想法吗?
  • @Laurel 还有一个示例包:TinyMCE.MVC.JQuery.Sample (nuget.org/List/Packages/TinyMCE.MVC.JQuery.Sample) 安装它,您将有一个运行良好的示例。这应该给你一个想法。
  • 我正在使用该示例包,但也许我做错了?我刚刚创建了一个新项目(MVC Web 应用程序)并安装了该软件包,并试图让它与您在文章中的“博客”示例一起使用。我在 .cshtml 中对您的部分视图的引用如下:@Html.Partial("tinymce_jquery_full")。我在上一篇文章中遇到了错误。
  • 你能把你的示例项目放在云端的某个地方并给我链接吗?
【解决方案2】:

注释掉设置editor_selector: "tinymce",有什么不同吗?

还有一点要提:

我不是 jquery 构建 (tiny_mce_jquery.js/jquery.tinymce.js) 的朋友,原因有几个(例如它很慢,...)。改用 tiny_mce.js 有什么不同吗?您也可以在页面上加载常规 jquery.js - 这很有效并且效果很好。

【讨论】:

  • 实际上我没有理由不能使用 tiny_mce.js。我开始尝试让它工作,但遇到了问题,所以我转向了 jQuery 插件。我不记得我遇到的问题,但我会回去再试一次。我现在比我第一次尝试时知道的更多,所以也许我可以让它发挥作用。感谢您的回复!
  • 如果您在使用常规 js 构建时遇到问题 - 请询问
  • 我终于让它工作了。我删除了对 jquery.tinymce.js 和 tiny_mce_jquery.js 的所有引用,并按照您的建议使用了 tiny_mce.js,一切正常。非常感谢!!
  • 我很高兴它现在对你有用。如果这个答案完全解决了你的问题,我建议你接受这个答案
猜你喜欢
  • 2011-03-11
  • 2011-06-29
  • 2012-06-24
  • 2011-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多