簡體   English   中英

為什么我無法在Jquery插件中使用FormData從tinymce編輯器中獲得textarea的值?

[英]Why I can't get a value of textarea from tinymce editor using FormData in Jquery plugin?

我在Tinymce編輯器中使用Jquery插件,以使用Codeigniter向數據庫添加一些發布數據。

我的問題我無法從使用Tinymce Editor的 textarea中獲得所有價值,但是另一個字段運行得很好。

這是我的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>

如果我對數組變量DD說明使用Tinymce編輯器 ,則無法獲得所有textarea值的結果

在此處輸入圖片說明

在捕獲表單數據之前,可能需要使用編輯器的內容更新<textarea> 我正在猜測,因此假設您在創建FormData對象時正在獲取字段值。

如果這是真的話,那么在某處FormData構造移動TinyMCE的編輯內容到<textarea>調用tinymce.Editor.save()。 例如,如果在名為editor的var中引用了activeEditor實例,則editor.save()將更新關聯的<textarea>元素。

之后,您可以使用JQuery .val()函數獲取字段的值,即。 someVar = $(#fieldName).val(); 顯然,您需要提供適當的名稱來代替someVar#fieldName

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM