【问题标题】:tinymce onkeyup call jquery functiontinymce onkeyup 调用 jquery 函数
【发布时间】:2015-09-13 01:50:25
【问题描述】:

我的 tinymce 集成有问题。 这是我的代码和我不工作的解决方案:

<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 版本 3。 我只需要tinymce,因为我必须将textarea中的一些文本设置为粗体。

谢谢你帮助我。我很绝望。

【问题讨论】:

    标签: javascript jquery tinymce onkeyup onkeypress


    【解决方案1】:

    我怀疑您遇到的问题是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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-17
      • 2012-12-04
      • 1970-01-01
      • 2021-10-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多