2015-09-13 7 views
0

У меня проблема с интеграцией tinymce. Вот мой код, и мой не рабочий раствор:tinymce onkeyup call jquery function

<div class="mcebox"> 
    <label>Text </label> 
    <textarea name="text" class="ta_cprofi mceEditorblick" id="textcontent"></textarea> 
    <div id="preview"></div> 
</div> 

<script language="javascript" type="text/javascript"> 
    tinyMCE.init({ 
     mode: "specific_textareas", 
     editor_selector: "mceEditorblick", 
     theme: "advanced", 

     paste_auto_cleanup_on_paste: true, 
     theme_advanced_buttons1: "bold", 
     theme_advanced_buttons2: "", 
     theme_advanced_buttons3: "", 

     setup: function(ed) { 
      ed.onKeyUp.add(function() { 
       alert("Hello"); 
      }); 
     }, 
    }); 

    function blumieka() { 
     $.ajax({ 
      type: "POST", 
      url: "inc/admin/blumieka/ajax_modules/ajax_ads.php", 
      data: "load=blumieka&text=" + document.getElementById("textcontent").value, 

      success: function(html) { 
       $("#preview").html(html) 
      } 
     }); 
    } 
</script> 

Предупредительное сообщение отлично работает. Теперь я хочу заменить предупреждение функцией jquery "blumieka". Я попытался это:

setup: function(ed) { 
    ed.onKeyUp.add(function() { 
     blumieka(); 
    }); 
}, 

Но это не работает ... Что такое моя ошибка?

Я использую tinymce Version 3. Мне просто нужен tinymce только потому, что мне нужно выделить текст в текстовом поле полужирным шрифтом.

Спасибо, что помогли мне. Я в отчаянии.

ответ

0

Я подозреваю, что у вас есть document.getElementById("textcontent").value. Это не дает значения редактора. Это просто пустой текст. Чтобы получить фактический HTML-контент из редактора, вам необходимо использовать tinyMCE.activeEditor.getContent().

tinyMCE.init({ 
    mode: "specific_textareas", 
    editor_selector: "mceEditorblick", 
    theme: "advanced", 

    paste_auto_cleanup_on_paste: true, 
    theme_advanced_buttons1: "bold", 
    theme_advanced_buttons2: "", 
    theme_advanced_buttons3: "", 

    setup: function(ed) { 
     ed.onKeyUp.add(function() { 
      blumieka(); 
     }); 
    }, 
}); 

function blumieka() { 
    //get the actual content from editor 
    var content = tinyMCE.activeEditor.getContent(); 
    $.ajax({ 
     type: "POST", 
     url: "inc/admin/blumieka/ajax_modules/ajax_ads.php", 
     data: "load=blumieka&text=" + content, 

     success: function(html) { 
      $("#preview").html(html) 
     } 
    }); 
} 

Вот рабочий DEMO