将文本从div传递到文本编辑器TinyMCE,然后传递回div

问题描述 投票:0回答:1

enter image description here

HTML从下面的div加载文本,并在弹出模块中使用TinyMCE编辑器对其进行编辑,并在单击保存按钮后更新文本,我尝试了下面的代码,但是没有用。

<div class="sim-row-header1-slider-left-text sim-row-edit" data-type="text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris vitae ullamcorper orci. Nullam nulla felis, imperdiet ac sollicitudin et, malesuada sagittis lacus.</div>

用于使用文本编辑器编辑文本的HTML弹出模块

<div class="sim-edit" id="sim-edit-text">
<div class="sim-edit-box" style="height:390px;">
<div class="sim-edit-box-title">Edit Text</div>

<div class="sim-edit-box-content">
<div class="sim-edit-box-content-text">Text</div>
<div class="sim-edit-box-content-field"><textarea class="sim-edit-box-content-field-textarea text text-editor"></textarea></div>
</div>
<div class="sim-edit-box-buttons">
<div class="sim-edit-box-buttons-save">Save</div>
<div class="sim-edit-box-buttons-cancel">Cancel</div>
</div>
</div>
</div>

用于将数据传递到文本编辑器并单击保存按钮时将其传递回的JavaScript。

tinymce.init({
    selector: ".text-editor",
    width:      '100%',
    height:     270,
    plugins:    [ "anchor link" ],
    statusbar:  false,
    menubar:    false,
    toolbar:    "link anchor | alignleft aligncenter alignright alignjustify",
    rel_list:   [ { title: 'Lightbox', value: 'lightbox' } ]
});

//edit text
if(big_parent.attr("data-type")=='text'){

$("#sim-edit-text .text").val(big_parent.text());
$("#sim-edit-text").fadeIn(500);
$("#sim-edit-text .sim-edit-box").slideDown(500);

$("#sim-edit-text .sim-edit-box-buttons-save").click(function() {
  $(this).parent().parent().parent().fadeOut(500)
  $(this).parent().parent().slideUp(500)

    big_parent.text($("#sim-edit-text .text").val());



    });

}
javascript jquery tinymce
1个回答
0
投票

一旦TinyMCE加载到页面上,基础textarea将不再在页面上可见。在您输入TinyMCE时,您实际上并没有更新textarea,而是在输入iFrame。

[尝试使用JavaScript与textarea交互之前,您需要调用triggerSave()以使TinyMCE用当前的编辑器内容更新基础textarea。另外,您也可以通过TinyMCE的getContent() API(https://www.tiny.cloud/docs/api/tinymce/tinymce.editor/#getcontent)获取其内容。

© www.soinside.com 2019 - 2024. All rights reserved.