我只是使用最新版本的summernote进行策略。版本 7。
由于某种原因,此图片上传代码不起作用。 onImageUpload: function(files) {sendFile(files[0]);}
行甚至没有被执行。
图像成功出现在编辑器中,但在 base64 中,并且未上传到 uplaods/
文件夹中
所有包含都已成功调用。
在页面的head标签中插入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>
上传者.php
$dir_name = "uploads/";
move_uploaded_file($_FILES['file']['tmp_name'],$dir_name.$_FILES['file']['name']);
echo $dir_name.$_FILES['file']['name'];
Summernote 真的很容易使用。我只需要让图像上传工作即可 1000%nof。
请,有人可以帮我吗?
最佳答案
选项中回调的位置在 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);
}
});
}