Как очистить содержимое TINYMCE после действия ajax с помощью jquery - PullRequest
7 голосов
/ 06 октября 2010

Я добавляю содержимое в некоторые поля ввода и текстовое поле с помощью функции jquery ajax.Только textare использует TINYMCE.

Однако после ajax текст в TINYMCE не обновляется и остается.

Как я могу очистить содержимое в TINYMCE с помощью jquery?

Мой текущий код следующий.*

//on submit event
    $("#specformentry").submit(function(event){
        event.preventDefault();
        if(checkForm()){
          //  var href = $(this).attr("href");
            submitinput.attr({ disabled:true, value:"Sending..." });
            //$("#send").blur();
            //send the post to shoutbox.php
            $.ajax({
                type: "POST",
                url: "../../Ajaxinsertspec",
                data: $('#specformentry').serialize(),
                complete: function(data){
                     update_entry();
                     specdesc.val('');
                     datecreated.val('');
                     detailstext.val('');
               // this code is supposed to empty the INYMCE content, but it does not

                    //reactivate the send button
                    submitinput.attr({ disabled:false, value:"Enter Spec" });
                }
             });
        }
        else alert("Please fill all fields!");
        //we prevent the refresh of the page after submitting the form
        return false;
    });

И следующее является частью HTML

<div id="enterlabel"><label for="spec_details">Click me to enter Spec Details</label></div>
<div style="display: block;" id="textarea">
<textarea style="display: none;" name="spec_details" cols="90" rows="12" id="detailstext"></textarea>
<span class="mceEditor defaultSkin" id="detailstext_parent">
    <table style="width: 100px; height: 100px;" class="mceLayout" id="detailstext_tbl" cellpadding="0" cellspacing="0">
        <tbody><tr class="mceFirst">
          <td class="mceToolbar mceLeft mceFirst mceLast"><a href="#" accesskey="q" title="Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to...
...

Ответы [ 3 ]

14 голосов
/ 07 октября 2010

Вам не нужен jQuery для очистки Tinymce. Получить экземпляр tinymce по идентификатору и установить для содержимого значение '' (равно пустому), используя

// идентификатор первого редактора страницы можно найти в tinymce.editors [0] .id

var tinymce_editor_id = 'my_tinymce_id'; 
tinymce.get(tinymce_editor_id).setContent('');
9 голосов
/ 26 марта 2013

Это сработало для меня:

tinyMCE.activeEditor.setContent('');

Особенно, если это единственный редактор, существующий на вашей странице.

2 голосов
/ 14 сентября 2011

Попробуйте с кодом ниже

if (typeof(tinyMCE) != 'undefined') {  
  $('#edit-comment').val('');  // Removes all paragraphs in the active editor   
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...