Отключение CK Editor от элемента без имени и значения Id - PullRequest
0 голосов
/ 06 июня 2018

Я работаю над CMS, где элементы создаются динамически, а некоторые предварительно загружены, мне нужно отсоединить CK Editor от этих предварительно загруженных элементов и снова прикрепить CK Editor ко всем редактируемым элементам в целевой области, включая предварительно загруженные.

I'm in this loop, that gives me the target div being appended and I need to remove the CK Editor from the preloaded elements with CK Editor without knowing their Ids and name values.




   //here 'thisElement' is the array of all editable elements being appended including preloaded ones
                    var i;
                    for (i = 0; i < thisElement.length; i++) {

                      //something like this, this doesn't work
                      //  CKEDITOR.destroy(thisElement.get(a));

                      //or something like this, this doesn't work
                       // CKEDITOR.editable(thisElement.get(i));

                        CKEDITOR.inline(thisElement.get(i));

                        for (name in CKEDITOR.instances) {
                            delete CKEDITOR.instances[name];
                        }
                    };

Как мне этого добиться?

1 Ответ

0 голосов
/ 06 июня 2018

Я делаю похожую вещь.Я добавляю и удаляю строки из таблицы, записи которых привязаны к коллекции.Из-за этого я должен повторно заполнить индексы в DOM, а также удалить и заново подключить все мои CKEditors.

Ниже приведено то, что работает для меня, но оно удаляет ВСЕ редакторы с текущей страницы.

EDIT : Добавлена ​​проверка, чтобы увидеть, находится ли имя CKEditor в массивеИмена элементов DOM.

  var domElements = ["element1", "element2"];

        for (instance in CKEDITOR.instances) {
            if (CKEDITOR.instances.hasOwnProperty(instance)) {
                if (jQuery.inArray(CKEDITOR.instances[instance].name, domElements) !== -1) {
                    CKEDITOR.instances[instance].destroy();
                }
            }
        }

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...