Summernote OnImageUpload未被执行

7

我刚开始使用最新版本的Summernote,即版本7。但是由于某些原因,这段图片上传代码无法正常工作:onImageUpload: function(files) {sendFile(files[0]);},甚至没有被执行。

图片成功地显示在编辑器中,但以Base64格式呈现,并未上传到uploads/文件夹中。

所有包含文件都已成功调用。

JS插入在页面头部标签中。

<script>
            $(document).ready(function() {
                $('#summernote').summernote({
                    height: 200,
                    onImageUpload: function(files) {
                        sendFile(files[0]);
                    }
                });
                function sendFile(file) {
                    var data = new FormData();
                    data.append("file", file);//You can append as many data as you want. Check mozilla docs for this
                    $.ajax({
                        data: data,
                        type: "POST",
                        url: 'uploader.php',
                        cache: false,
                        contentType: false,
                        processData: false,
                        success: function(url) {
                            $("#summernote").summernote("insertImage", url);
                        }
                    });
                }
            });
        </script>

uploader.php

$dir_name = "uploads/";
    move_uploaded_file($_FILES['file']['tmp_name'],$dir_name.$_FILES['file']['name']);
    echo $dir_name.$_FILES['file']['name'];

Summernote非常易于使用。我只需要让图片上传正常工作,就可以将其使用到1000%。

请问有人能帮助我吗?

1个回答

16

自v0.7.0版本以后,选项中回调函数的位置已经发生了变化。

$('#summernote').summernote({
    height: 200,
    callbacks: {
        onImageUpload : function(files, editor, welEditable) {

             for(var i = files.length - 1; i >= 0; i--) {
                     sendFile(files[i], this);
            }
        }
    }
});

和sendFile函数

function sendFile(file, el) {
var form_data = new FormData();
form_data.append('file', file);
$.ajax({
    data: form_data,
    type: "POST",
    url: 'uploader.php',
    cache: false,
    contentType: false,
    processData: false,
    success: function(url) {
        $(el).summernote('editor.insertImage', url);
    }
});
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接