多个 Summernote 实例 - 上传图片到服务器
Multiple Summernote instances - upload images to server
所以我使用带有 symfony 表单的 summernote 编辑器,并且我设法将我的图像上传到服务器而没有将它们保存为 base64 格式。另一个问题来了,我有两个 summernote 编辑器,当我在第二个中上传图片时,它被插入到第一个中。我尝试使用 jQuery 的 each() 循环,但没有成功。问题出在上传功能上,没有它也能正常工作,但我需要将图像上传到服务器。这是我的代码:
$(document).ready(function () {
$('.editor').summernote({
callbacks: {
onImageUpload: function (files) {
sendFile(files[0]);
}
}
});
function sendFile(img) {
var formData = new FormData();
formData.append("img", img);
$.ajax({
data: formData,
type: "POST",
url: "/admin/upload-editor",
cache: false,
contentType: false,
processData: false,
success: function (url) {
$('.editor').summernote('insertImage', url);
}
});
}
});
编辑:
我之前的循环逻辑是错误的,所以我传递了一个键来遍历每个编辑器。
$(document).ready(function () {
$('.editor').each(function (i) {
$('.editor').eq(i).summernote({
callbacks: {
onImageUpload: function (files) {
sendFile(files[0], i);
}
}
});
}
);
function sendFile(img, i) {
var formData = new FormData();
formData.append("img", img);
$.ajax({
data: formData,
type: "POST",
url: "/admin/upload-editor",
cache: false,
contentType: false,
processData: false,
success: function (url) {
$('.editor').eq(i).summernote('insertImage', url);
}
});
}
});
所以我使用带有 symfony 表单的 summernote 编辑器,并且我设法将我的图像上传到服务器而没有将它们保存为 base64 格式。另一个问题来了,我有两个 summernote 编辑器,当我在第二个中上传图片时,它被插入到第一个中。我尝试使用 jQuery 的 each() 循环,但没有成功。问题出在上传功能上,没有它也能正常工作,但我需要将图像上传到服务器。这是我的代码:
$(document).ready(function () {
$('.editor').summernote({
callbacks: {
onImageUpload: function (files) {
sendFile(files[0]);
}
}
});
function sendFile(img) {
var formData = new FormData();
formData.append("img", img);
$.ajax({
data: formData,
type: "POST",
url: "/admin/upload-editor",
cache: false,
contentType: false,
processData: false,
success: function (url) {
$('.editor').summernote('insertImage', url);
}
});
}
});
编辑: 我之前的循环逻辑是错误的,所以我传递了一个键来遍历每个编辑器。
$(document).ready(function () {
$('.editor').each(function (i) {
$('.editor').eq(i).summernote({
callbacks: {
onImageUpload: function (files) {
sendFile(files[0], i);
}
}
});
}
);
function sendFile(img, i) {
var formData = new FormData();
formData.append("img", img);
$.ajax({
data: formData,
type: "POST",
url: "/admin/upload-editor",
cache: false,
contentType: false,
processData: false,
success: function (url) {
$('.editor').eq(i).summernote('insertImage', url);
}
});
}
});