Никак не могу удалить виз.редактор tinymce через jquery

danneo

Честный
Регистрация
13 Ноя 2007
Сообщения
1.526
Реакции
121
На странице список записей. При клике по записи открывается textarea, инициализируется редактор. При отправке формы или просто отмене (поле textarea) блок с виз.редактором закрывается. Но редактор остается. При открытии другой записи, там другой редактор. И так может быть много редакторов. Нужно как-то их удалять при закрытии блока с тектом, чтобы не занимали память, так сказать.
Поидее, при инициализации должен возвращаться идентификатор, но он не возвращается
Если пишу так:
var editor = tinymce.init({});
console.log(editor); // editor = undefined
Поэтому, скорее всего, удалить его и не могу.
 
На странице список записей. При клике по записи открывается textarea, инициализируется редактор. При отправке формы или просто отмене (поле textarea) блок с виз.редактором закрывается. Но редактор остается. При открытии другой записи, там другой редактор. И так может быть много редакторов. Нужно как-то их удалять при закрытии блока с тектом, чтобы не занимали память, так сказать.
Поидее, при инициализации должен возвращаться идентификатор, но он не возвращается
Если пишу так:
var editor = tinymce.init({});
console.log(editor); // editor = undefined
Поэтому, скорее всего, удалить его и не могу.
А editor принадлежит объекту window? Или в каком-то контексте запускается?

Editor не должен быть undefined
 
Для просмотра ссылки Войди или Зарегистрируйся

tinymce.EditorManager.execCommand('mceRemoveControl',true, editor_id);

для старого
tinymce.EditorManager.execCommand('mceRemoveEditor',true, editor_id);

Или можем удалить textarea совсем если редактирование не требуется.
 
А editor принадлежит объекту window? Или в каком-то контексте запускается?

Editor не должен быть undefined
В объекте window редакторы есть. Возможно в этом и проблема. Но голова это не может переварить, перегруз уже. Что нужно сделать то?
 
Для просмотра ссылки Войди или Зарегистрируйся

tinymce.EditorManager.execCommand('mceRemoveControl',true, editor_id);

для старого
tinymce.EditorManager.execCommand('mceRemoveEditor',true, editor_id);

Или можем удалить textarea совсем если редактирование не требуется.
Если вручную написать, то удаляет. Но остается текстовое поле. При повторном открытии редактор снова берет текст из поля и выводится.
Нужно только удалять еще и текстовое поле, видимо.
 
Возможно, достаточно просто скрыть элемент? То что он выводится при повторном открытии, так и будет, строки инициализации никто не убирал. Нужно ставить логическую инициализацию, если флажок стоит, то показываем этот, если нет, не показываем.
Смотрите где у Вас функция init определяется. Если в скрипте, то подключайте или не подключайте с помощью js.
 
Назад
Сверху