Search code examples
javascripthtmlajaxdatabasetinymce

TinyMCE 5.8.2: text doesn't stored in DB


I have a simple Post Logic using ajax:

<div class="form-group">
    <label for="text-longtext-<?php echo $longtext['id'] ?>">
         Text
     </label>
    <textarea class="form-control longtext" rows="1"
          id="text-longtext-<?php echo $longtext['id'] ?>">
        <?php echo $longtextContent['text'] ?>
    </textarea>
</div>
<script>
     let elem = document.getElementById('text-longtext-'+'<?php echo $longtextContent['id'] ?>')
     tinymce.init({
         target: elem
     });
</script>

Preparing Data for AJAX call:

 $('.saveForm').click(function (e) {
        e.preventDefault();
        e.stopPropagation();
        let form = $(this).closest("form");
        ...
        ...
        let obj = {
             "..":"..",
             "..":"..",
             "..":"..",
             "longtext": form.find(".longtext").val()
        }
        console.log(obj)
        ajaxCall(obj);
  })

Every other inputs are stored to DB, but without tinyMCE textarea formated text.

console.log(obj) - shows empty "longtext" (contentListInfotext)

enter image description here

What is wrong?


Solution

  • tinyMCE.triggerSave(); did the job.