【问题标题】:How to toggle CKEditor with normal textarea in Rails?如何在 Rails 中使用普通文本区域切换 CKEditor?
【发布时间】:2015-01-09 06:38:38
【问题描述】:

我正在开发一个 Rails 项目。我可以使用以下方法在文本区域中显示 CKEditor:

<% 1.upto(4) do |i| %>
  <%= cktext_area_tag "fields_name#{i}" %>
<% end %>

我想在单击链接时将所有 CKEditor 文本区域切换为普通文本区域:

<%=link_to "Show as editor","#",:id=>"showEditor"%>

这怎么可能?

任何帮助将不胜感激!

【问题讨论】:

  • 获取实例并调用destroy
  • @epascarello : 你能解释一下怎么做吗?

标签: javascript jquery ruby-on-rails ruby-on-rails-3 ckeditor


【解决方案1】:

CKEDITOR 是一个全局对象,它有一个属性instances,它是一个代表页面上所有编辑器的对象

以下循环遍历实例并更新 textarea 值,然后销毁编辑器实例

for (instance in CKEDITOR.instances) {
     var editor = CKEDITOR.instances[instance];
     editor.updateElement();
     editor.destroy();
     editor = null;
}

单实例http://ckeditor.com/ckeditor_4.3_beta/samples/ajax.html的示例

【讨论】:

  • 谢谢!有用。但是切换不起作用。再次单击“显示为编辑器”链接时,CKEditor 未启用。
  • 将它们置于view source 模式不是更好吗?要再次激活,您需要使用原始配置对象重新初始化它们
  • 没有。我们有这样的要求。是否可以先显示普通文本区域,然后单击“显示为编辑器”链接将显示 CKEditors?
  • 所以按照文档使用手动初始化。您现在可能已经按类设置它们,这会自动初始化它们。按照我链接到的例子。你刚才说你希望他们去 textarea
猜你喜欢
  • 2012-11-21
  • 2011-03-10
  • 1970-01-01
  • 2017-01-10
  • 1970-01-01
  • 2019-03-22
  • 2018-06-08
  • 2015-07-19
  • 1970-01-01
相关资源
最近更新 更多