我有这个ajax上传代码,它发送回数据,说明上传是否成功。然而,它只知道文件是否没有错误,并在文件上传后被移动到目标路径,如果上传在完成之前终止,则不会返回任何数据。有没有一种方法可以让我监听并检测上传意外终止的时刻并向页面发出警报?
$('#send').click(function() {
var fileInput = $('#file')[0];
var data = new FormData();
for(var i = 0; i < fileInput.files.length; ++i){
data.append('file[]',fileInput.files[i]);
}
$.ajax({
type:'POST',
method:'POST',
url:'upload.php',
headers:{'Cache-Control':'no-cache'},
data:data,
contentType:false,
processData:false,
success: function(response){
var return_data = response;
if(return_data !== 'success') {
$('#status').html('uploaded');
}
else if(return_data == 'success') {
$('#status').html('upload failed');
}
}
});
});
在 upload.php 中:
if($_FILES['file']['error'][$key] == 0
&& move_uploaded_file($_FILES['file']['tmp_name'][$key],"video/test/$name")){
echo "success";
}else{
echo "failed";
最佳答案
向您的 $.ajax
选项对象添加一个 error
方法。
关于php - 检测 ajax 上传何时意外终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15176944/