Javascript 在ajax调用中重新加载tinymce.init函数

Javascript 在ajax调用中重新加载tinymce.init函数,javascript,ruby-on-rails,tinymce,ruby-on-rails-2,tinymce-4,Javascript,Ruby On Rails,Tinymce,Ruby On Rails 2,Tinymce 4,我在rails2上,使用tinymce 4编辑器编辑textarea字段 new.html <script type="text/javascript" src="/tinymce/tinymce.min.js"></script> <%= render "form" %> <% form_for ... %> <%= c.text_area :description %> <%= submit_tag %> <%

我在
rails2
上,使用
tinymce 4
编辑器编辑
textarea
字段

new.html

<script type="text/javascript" src="/tinymce/tinymce.min.js"></script>
<%= render "form" %>
<% form_for ... %>
 <%= c.text_area :description %>
 <%= submit_tag %>
<% end %>
<div id ="refresh_editor">
<script type="text/javascript">
  tinymce.init({
    selector: "textarea"
...
..
});
</div>
我的问题,
1) 如何刷新脚本?
2) 我是否也需要刷新文本区域类型?这将使编辑器中的内容为空


我为什么要这么做?将给出一个想法,当用户第二次检查“纸张边距”下拉列表时,我会丢失值。

嗯。。。如果我理解正确,请告诉我: 您需要重新初始化tinymce脚本吗

如果您需要这样做,您可以在tinymce文档中找到重新序列化或重置脚本的方法

然而,我在tinymce对象中找到了方法
tinymce.remove()
,您可以使用它来删除和重新初始化脚本(我尝试使用它来重新初始化,但它是:D)

因此,只需创建一个函数(或者在我的示例中是tinymce的e方法),重新调用
tinymce.init()
width您的设置

在我的示例中,如果您只需要清空我装箱的文本,那么可以使用一种称为“清理”的方法来删除所有内容,并将其替换为

请参见示例:

注意:我为触发函数创建了2个标签:
clean()
reset()


这也许不是最好的方法。。。但是只有我能帮你解决问题。

将脚本放入函数中,并随时调用它that@NitinJ是的,但是如何在ajax调用上加载脚本呢?我知道我可以更改表单或文本,但脚本将一次性加载到页面,我的想法是对的?那么如何调用js函数呢?您希望在页面加载和AJAX请求时运行该脚本吗。或者只是在ajax请求中,我找到了一种在页面加载时运行它的方法,但是如何在ajax调用中运行它呢?$.ajax({url:“/users/check_login”,success:function(data){//here call your function for the script}})nooo。。初始输入后在tinymce窗口管理器中保留值,以便在ajax请求时重新加载?
tinymce.init(…)
。。可能吗?是的,您可以在ajax请求的完成回调函数中插入
tinymce.init(…)
。但是很抱歉我不明白你的意思不。。初始输入后在tinymce窗口管理器中保留值,明白吗?你不想保留默认设置?我不担心这些设置。我将解释这个问题。在文本框中输入边距顶部的值后(正如您在fiddle中看到的),当您提交时,我已经在我的应用程序中使用了远程功能。然后值从编辑器中消失,对吗?所以我使用了ajax来更新表单,但是我需要重新加载脚本,我该怎么做呢?因此,这些值将在编辑器中更新。。有什么疑问我可以去镇上解释。。
page.replace_html 'refresh_editor', :partial => 'form'