我是ajax新手,我使用的是旧代码:
$.ajax({
type: 'POST',
url: 'phppath/sucms.php',
data: $('#formid').serialize(),
success: function(response){
$('#success').html(response);
}
});
它工作,但不是完美的,一切都是好的,但当我试图上传一个图像,它有“明确的价值”。
我在试着编写这样的新代码:
var formData = new FormData(this);
$.ajax({
type: 'POST',
url: 'phppath/sucms.php',
data: formData ,
success: function(response){
$('#success').html(response);
}
});
但它会重新加载页面并打开sucms.php清除窗口。
1条答案
按热度按时间cbjzeqam1#
如果要使用ajax上传文件,需要在ajax配置中将contenttype和processdata设置为false。
另一方面,如果页面正在重新加载或在新窗口中打开。可能是因为按钮的类型是
submit
. 你应该把按钮类型改成button
或使用event.preventDefault()
以防止在传统的表单提交方法中执行操作。