javascript - 为什么我无法使用 Jquery 插件中的 FormData 从 tinymce 编辑器获取 textarea 的值?

标签 javascript jquery codeigniter tinymce tinymce-4

我使用 Jquery 插件Tinymce 编辑器,使用 Codeigniter 将一些发布数据添加到数据库。

我的问题我无法从我使用Tinymce Editortextarea获取所有值,但另一个字段运行良好。

这是我的Tinymce 编辑器

<script type="text/javascript">
    $(document).ready(function () {
        tinymce.init({
            selector: "textarea",
            theme: "modern",
            base_url: false,
            external_filemanager_path: "/filemanager/",
            filemanager_title: "Responsive Filemanager",
            external_plugins: {"filemanager": "<?PHP echo base_url('../filemanager/plugin.min.js') ?>"},
            relative_urls: false,
            plugins: [Full uption ],
            toolbar1: "insertfile undo redo | bold italic | alignleft aligncenter alignright alignjustify ",

        });
    });
</script>

这是我的 Jquery 插件

<script>
    $(document).ready(function () {

        $("#do_upload").on('click', function () {
            if ($("#ch_title").val() === '') {
                alert("You have to input all Chineses language field");
                $("#ch_title").addClass('error');
            }
            if ($("#kh_title").val() === '') {
                alert("You have to input all Khmer language field");
                $("#kh_title").addClass('error');
            }
        });
        $("#eng_form").submit(function (e) {
            e.preventDefault();
        }).validate({
//             ignore: "",
            rules: {
                eng_title: {
                    required: true
                },
                eng_dd: {
                    required: true
                },
                kh_dd: {
                    required: true
                },
                eng_up_img: {
                    required: true
                }, 
            },
            submitHandler: function () {

                $.ajax({
                    url: '<?PHP echo base_url('image/rupload'); ?>',
                    type: 'POST',
                    data: new FormData($('#eng_form')[0]),
                    contentType: false,
                    cache: false,
                    dataType: 'json',
                    processData: false,
                    beforeSend: function (xhr) {
                        $("#teset").modal('show');
                        $('<img style="width:60px; height:auto;" src="<?PHP echo base_url('assets/admin/img/ajax-loader-2.gif'); ?>"/>').appendTo("#loading_img");
                    }, complete: function (jqXHR, textStatus) {
                        if (textStatus == 'success') {
                            $("#loading_img").html('');
                            $("#teset").modal('hide');
                            $("#img_modal").modal('hide');
                            $($('#img_upload')).closest($('form')).find("input[type=text], textarea").val(" ");
                            window.location.href = '<?PHP echo base_url('slide/right'); ?>';
                        }
                    }, success: function (data) {

                        var size = data.img_pro.upload.file_size;
                        if (size >= 2048) {
                            alert("Your images size can't more than 2MB" + "Your size:" + size);
                        } else if (data.res === false) {
                            alert("Your images is not correct");
                        }
                    }
                });
            }

        });
    });
</script>

如果我使用Tinymce编辑器来处理数组变量DD描述,结果我无法获取所有textarea值

enter image description here

最佳答案

您可能需要更新 <textarea>在捕获表单数据之前使用编辑器的内容。我猜测,因此假设您在创建 FormData 时正在获取字段值对象。

如果这是真的,那么在 FormData 的某个地方构造函数将tinymce编辑器内容移动到 <textarea>通过调用tinymce.Editor.save()。例如,如果您的 activeEditor 实例在名为 editor 的 var 中引用。然后editor.save()将更新关联的<textarea>元素。

之后,您可以使用 JQuery .val() 函数获取字段的值,即。 someVar = $(#fieldName).val();显然,您需要提供适当的名称来代替 someVar#fieldName .

关于javascript - 为什么我无法使用 Jquery 插件中的 FormData 从 tinymce 编辑器获取 textarea 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33185657/

相关文章:

javascript - 偏移量改变时滚动到顶部

codeigniter 包含 css 或 js 文件

php - 在不刷新页面的情况下如何使用ajax/jQuery显示数据库中的值

javascript - 如何将不完整的字符串索引到 JSON 键?

javascript - 重复调用 JavaScript 函数而没有得到 stackoverflow

javascript - 错误: Cannot read property 'each' of undefined

javascript - Event.keyCode 不适用于 'on input' - 未定义

javascript - 浏览器暂停/挂起检测

jquery - 如何将一个类添加到一个元素并保持它在那里直到鼠标离开 animate.css?

php - 在codeigniter中从json数组中获取值