通过ajax上传的文件没问题,但是当json编码的数组返回到ajax时,我在尝试解析时遇到此错误:
未捕获的SyntaxError:意外的输入结束
客户端脚本
jQuery(".target-input").change(function() {
var formData = new FormData();
formData.append("file", this.files[0]);
jQuery.ajax({
url: "../wp-content/plugins/site_bannermanager/site_ajax_server_add.php",
file: formData
}).done(function(response) {
console.log(JSON.parse(response));
});
});
site_ajax_server_add.php
foreach ($_FILES as $key => $data) {
exit(json_encode(wp_handle_upload($data)));
}
答案 0 :(得分:1)
jQuery(".target-input").change(function () {
var formData = new FormData();
formData.append("file", this.files[0]);
jQuery.ajax({
url: "../wp-content/plugins/site_bannermanager/site_ajax_server_add.php",
file: formData,
success: function(response) {
console.log(JSON.parse(response));
}
});
});
应该做的伎俩。看起来你忘了你的一些结束括号。我也使成功功能更好一些(但如果你愿意,你可以改回来,我只是认为它使它更具可读性。