Как получить доступ к скрытому полю ввода, которое TinyMCE использует для текстового редактора - PullRequest
1 голос
/ 13 декабря 2011

Я создаю приложение, в котором я использую редактор TinyMCE, чтобы обеспечить параметры редактирования текста в текстовой области.Я хочу предоставить функцию save, где я хочу сохранить текстовое содержимое с помощью сообщения AJAX.

Итак, по нажатию кнопки я использую form.serialize () для отправки его в запросе AJAX.Ниже приведен JQuery, который я использую.Согласно этому, он должен сериализовать все поля, которые установлены, кроме одного имени csrfmiddlewaretoken.Идентификатор текстовой области id_text, который задается моделями django.Однако проблема в том, что текст, который я печатаю в редакторе, на самом деле не копируется в мою текстовую область.

Скорее всего, редактор TinyMCE отображает его на экране и только когда мы нажимаем кнопку отправки, копирует его в текстовое поле.Из-за этого я не могу сохранить набираемый контент.

$(".preview_button").click(function() 
    {           
        $.ajax({
          type: "POST",
          url: current_link,
          data: $("#blog_form :input[name!='csrfmiddlewaretoken']").serialize(),
          dataType: 'json',
          success: function(data) 
          {
            var preview_link = location.host;
            preview_link = preview_link + data;
            window.open(data,'preview_tab');
            $("#reply-message").html('Form saved' + $("#blog_form :input[name!='csrfmiddlewaretoken']").serialize());
          },
          error: function(request,error) 
          {
            // display success message and reset values in the form fields
            $("#reply-message").html('Form not saved because error:' + error);
          },

        });

        return false;   
    });

Может кто-нибудь сказать мне, как получить доступ к тексту в текстовом редакторе TinyMCE, как показано на экране.

Ответы [ 3 ]

2 голосов
/ 13 декабря 2011

Вы можете использовать функцию getContent: http://www.tinymce.com/wiki.php/API3:method.tinymce.Editor.getContent

2 голосов
/ 13 декабря 2011

Используйте метод сохранения в экземпляре редактора, чтобы переместить содержимое из редактора в текстовую область.

0 голосов
/ 21 ноября 2014

Добавьте этот tinyMCE.triggerSave ();вот так:

tinyMCE.triggerSave();
$.ajax({
// Your code
});

Это решит вашу проблему.

...