2015-04-10 6 views
2

Использование WindowManager для TinyMCE Я открываю окно и записывает необработанный HTML. Но его усечение моих ссылок для моих изображений. Странно, что он НЕ делает это с привязным тегом. Просто тег изображения.TinyMCE вставляет raw html в активный редактор

У меня есть этот кусок кода

html = '<a title="'+ $('#title').val() +'" href="'+ $('#url').val() +'"><img src="'+ $('#imgURL').val() +'" /></a>'; 

    var parentEditor = parent.tinyMCE.activeEditor; 
    parentEditor.execCommand('mceInsertRawHTML', false, html); 
    parentEditor.windowManager.close(); 

Это ДЕЙСТВИТЕЛЬНО вставить HTML в активный редактор. Когда я вхожу HTML в консоли я получаю

<a title="Click Action" href="yahoo.com"><img src="http://marketingedu.mychm.co/images/buttons/c2a-button4.png" /></a> 

Однако при просмотре исходного кода в редакторе TinyMCE, он изменил изображения атрибут SRC для

../../images/buttons/c2a-button4.png 

Вот мой весь Javascript INIT для редактора TinyMCE

tinymce.init({ 
     selector: ".editor", 
     setup: function(ed) { 
      ed.on('change', function(e) { 
       tinyMCE.triggerSave(); 

       $('form').trigger('checkform.areYouSure'); 
      }); 
      ed.on('init', function(e) { 
       autoresize_max_height: 500 
      }); 
      ed.addButton('defaultbtn', { 
       title: 'Insert Button', 
       icon: 'fa fa-plus-square', 
       onclick: function() { 
        // Open window 
        ed.windowManager.open({ 
         title: 'Button Selector', 
         url: "<?=$this->url('/webinar/custombuttons') ?>", 
         width: 800, 
         height: 600 
        }); 
       } 
      }); 
     }, 
     plugins: [ 
      "advlist autolink link responsivefilemanager lists charmap print preview hr anchor pagebreak spellchecker", 
      "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking", 
      "save table contextmenu directionality template paste textcolor colorpicker responsivefilemanager autoresize" 
     ], 
     toolbar: "undo redo | styleselect | bold italic | forecolor backcolor | alignleft aligncenter alignright | bullist numlist | outdent indent | table | link responsivefilemanager defaultbtn", 
     image_advtab: true , 

     external_filemanager_path:"/filemanager/", 
     filemanager_title:"Filemanager" , 
     external_plugins: { "filemanager" : "/filemanager/plugin.min.js"}, 
    }); 

ответ

6

Изменение этого:

var parentEditor = parent.tinyMCE.activeEditor; 
parentEditor.execCommand('mceInsertRawHTML', false, html); 

Для этого:

tinymce.activeEditor.setContent(html, {format: 'raw'}); 

Вот ссылка link о том, как установить содержание на TinyMCE в различных способов.

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

+0

Он работает с html, но что, если я хочу добавить некоторый js-код, например, так: ' – Jonjie

Смежные вопросы