0

我必须创建一个表格的克隆,我已经像下面这样制作了。

        <div id="form-field" class="form">
            <input type="text" name="coursename" id="firstname" value="coursename" />
            <input type="text" name="institutename" id="institutename" value="institutename" />
            <input type="text" name="startdate" id="startdate" value="startdate" />
            <input type="text" name="enddate" id="enddate" value="enddate" />
            <textarea name="content" style="width:100%"></textarea>
            <label for="education-info">Educational Information</label>              
        </div>      
        <!-- clearfix -->
        <div class="clear"></div>
        <!-- /clearfix -->
        <input class="submit" type="submit" name="submit_second" id="submit_second" value="" />

现在我使用下面编写的 jquery 来创建上述表单的克隆。但我无法获得微型 MCE 编辑器。我怎样才能获得完整的微型 MCE 编辑器。

我的 jQuery 用于表单的克隆。

  jQuery('.addeducation-sym').click( function(){
    jQuery('#form-field').clone().appendTo('#form-field');
  });
4

2 回答 2

1

如果基本元素(例如 textarea)上有一个 ID,并且它也被克隆,那么您有两个具有相同 ID 的元素。在 HTML 中不允许,并且由于 tinymce 默认情况下从元素 ID 中获取其实例 ID,因此克隆实际上并不能正常工作。

诀窍是首先删除编辑器

tinymce.remove();

然后用 jquery 克隆你的元素。

在将克隆元素写入 DOM 之前,您需要重命名任何克隆元素的 ID 以具有唯一 ID。

然后将克隆写入DOM,然后调用

tinymce.init(TINYMCE_SETTINGS);

其中 TINYMCE_SETTINGS 是您所有设置的对象。

于 2014-01-15T17:12:42.140 回答
1

如果您尝试使用已初始化的 tinymce 复制表单,您将失败。

如果您在复制表单后初始化 tinymce,您需要确保获得编辑器的 html 元素具有唯一的 id。此 id 将用作编辑器 id,如果您尝试使用相同的 id 初始化两个编辑器,则会出现错误。

于 2013-01-09T11:38:19.520 回答