在html的前端表单上加载第二个和下一个ckeditor小部件时,我遇到了问题。它在管理方面运行良好。当我动态地单击add more form set时,小部件没有显示出来,而是显示了textarea,它只在第一个表单上工作。对于基本需求,我已经一步一步地遵循了文档。我使用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小部件的字段在通过此按钮动态添加之后没有加载,而是显示了普通的textarea。我错过什么了吗?
发布于 2017-04-23 12:30:25
您可能想看看如何使用Django 1.9中提供的JavaScript信号。
一个简单的方法(由django-内容编辑器和feincms3组合而成)可能如下所示:
(function($) {
$(document).on('formset:added', function newForm(event, row) {
row.find('textarea').each(function() {
CKEDITOR.replace(this.id);
});
});
})(django.jQuery);我将把formset:removed的处理留给读者。
https://stackoverflow.com/questions/29768376
复制相似问题