我需要向控制器提交一个图像和一些数据,我需要ajax等待处理我的数据,这样你就可以在数据保存到我的数据库后显示在另一个页面中,但是当我使用async时它已经属于属性中的ajax错误,任何想法如何解决这个问题?
我的代码:
var album;
$('#buttonNex').click(function () {
var url = 'NextPage';
var fd = new FormData();
fd.append('file', $('#imageSe')[0].files[0]);
fd.append('title', $('#inputitle').val());
fd.append('artist', $('#inputArtist').val());
fd.append('twitter', $('#inputTwitter').val());
$.ajax({
url: url,
type: 'POST',
data: fd,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data) {
album = data.data;
},
error: function (jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
});
答案 0 :(得分:0)
https://api.jquery.com/jquery.ajax/#jQuery-ajax-settings有注释
跨域请求...请求不支持同步操作。
这是一个因素吗?
对于“为什么contentType: false
”,同一页面上也有注释
从jQuery 1.6开始,您可以传递false来告诉jQuery不要设置任何内容类型标头。
有一个我必须使用的服务器,它需要多部分内容而没有边界字符串。 (没有qp可以评论)