javascript - Django-CKEditor 小部件未动态加载

标签 javascript python django ckeditor django-ckeditor

我在加载 html 前端表单上的第二个和下一个 ckeditor 小部件时遇到问题。它在管理中运行良好。当我单击动态添加更多表单集时,小部件不会出现,而是显示文本区域,它仅适用于第一个(初始化)表单。我已经按照文档一步步了解基本要求。我正在使用 Django 和 django-ckeditor 包。页面上没有 javascript 错误。

抱歉之前没有显示任何代码。这是 javascript 的一部分,它在单击按钮后动态添加另一个表单集:

<script src="//cdn.ckeditor.com/4.4.5/standard/ckeditor.js"></script>
<script type="text/javascript" src="ckeditor/ckeditor-init.js"></script>

$('#add_more_work').click(function(){
var form_idx = $('#id_form_set-TOTAL_FORMS').val();
$('#form_set_work').append($('#empty_form_work').html().replace(/__prefix__/g, form_idx));
$('#id_form_set-TOTAL_FORMS').val(parseInt(form_idx) + 1);});

使用 ckeditor 小部件的字段在通过此按钮动态添加后不会加载,而是显示纯文本区域。我错过了什么吗?

最佳答案

您可能想看看使用 formset:added and formset:removed JavaScript signals从 Django 1.9 开始可用。

一个简单的方法(由 django-content-editorfeincms3 组合而成)可能如下所示:

(function($) {
  $(document).on('formset:added', function newForm(event, row) {
    row.find('textarea').each(function() {
      CKEDITOR.replace(this.id);
    });
  });
})(django.jQuery);

我将把 formset:removed 的处理留给读者。

关于javascript - Django-CKEditor 小部件未动态加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29768376/

相关文章:

javascript - 如何通过 Excel VBA 设置 Acrobat XI 打印机设置?

javascript - 构建我的第一个 Web 应用程序的好资源(可能只使用纯 HTML5/Javascript/CSS3)

django - request.is_secure() 对于 uwsgi 服务器总是返回 false

python - 'ascii' 编解码器无法对位置 9 : ordinal not in range(128) 中的字符 u'\u2013' 进行编码

python - 向 Bokeh 堆叠条形图添加交互

html - 其中一个页面没有从基础继承 css

java - 将 Javascript 库包含到 Wicket 面板

javascript - jQuery 循环遍历表格来显示值

python - 如何解决 pandas 的错误/功能?

python - xpath 正则表达式不会在 lxml.etree 中搜索 tail