TinyMCE - добавление переключателя ВКЛЮЧЕНИЯ - ВЫКЛЮЧЕНИЯ

Я использую TinyMCE на текстовых областях в моем администраторском разделе Magento. У меня есть свой редактор TinyMCE видимая форма запуск, но я хочу опцию к disable/re-enable это.

Я использую версию модуля jQuery, таким образом, я добавил некоторый сценарий, который почти работает. Однако это только влияет на первую инстанцию TinyMCE - если существуют какие-либо другие экземпляры его на странице, они не затронуты.

Я использовал этот пример http://tinymce.moxiecode.com/examples/example_23.php в качестве основы для того, что я сделал до сих пор. Но все еще не может выяснить, почему это влияет на первую инстанцию только. Какие-либо идеи? Вот мой код:

var $j = jQuery.noConflict();
// Add ON OFF toggle switch
$j(function() {
$j('textarea').after("
Toggle TinyMCE"); $j("span.toggle").toggle(function(){ $j('.wrapper').find('textarea').tinymce().hide(); }, function () { $j('.wrapper').find('textarea').tinymce().show(); }); });

5
задан Wesley Murch 27 September 2011 в 02:23
поделиться

1 ответ

Работает нормально, если я повторю скрипт для каждой отдельной текстовой области, например textarea:eq(0), textarea:eq(1) и т.д. Не знаю почему, но это сработает.

UPDATE:

То, как у них есть jQuery show/hide пример на сайте tinymce, на самом деле не работает. Вместо того, чтобы просто спрятать редактор, на самом деле нужно выгрузить и затем перезагрузить его, иначе любые изменения, сделанные в состоянии "toggled off" не будут сохранены при отправке формы. Поэтому вы должны сделать что-то вроде:

$(function() {
    var id = 'tinytextareaID'; // ID of your textarea (no # symbol) 
        $("a.toggle").toggle(function(){
           tinyMCE.execCommand('mceRemoveControl', false, id);
        }, function () {
            tinyMCE.execCommand('mceAddControl', false, id);
    });
});
11
ответ дан 18 December 2019 в 06:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: