我正在寻找其他帖子,但我无法解决我的问题。当我上传文件时它是成功的,但是 .done() 事件不起作用并且它不会刷新到“test.php?validate”。这是jquery代码:
function init(){
$("#asd").submit(function(){
var data = new FormData($('#asd')[0]);
upload(data);
return false;
});
}
function upload(data) {
$("#asd > :submit").prop('disabled', true);
$.ajax({
url: "test.php?validate",
type: "POST",
data: data,
async: false,
cache: false,
contentType: false,
processData: false
})
.done(function(info){
var data = JSON.parse(info);
if (data.status == 200)
messageAndRedirect(data.msg, data.url);
else
error(data.msg);
})
.fail(function(){
alert("Error.");
})
.always(function(){
$("#asd > :submit").prop('disabled', false);
});
}
这是输入代码:
{include file="header.tpl" title="files" scripts=$scripts}
<form id="asd" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br>
<input type="submit" value="¡upload!">
</form>
</body>
</html>
请帮忙!谢谢