[英]How to get a response from c# MVC controller after succesful jquery file ulpload
如何在成功上傳文件后從以下jQuery fileuplod獲取響應結果以設置警報?
這是腳本:
$(document).ready(function() {
$("#fileupload").fileupload({
dataType: "json",
url: "/Videos/UploadVideoFile/?isrc=feffwefew",
autoUpload: true,
done: function(e, data) {}
}).on("fileuploadprogressall", function(e, data) {
var progress;
progress = parseInt(data.loaded / data.total * 100, 10);
$(".progress-wrapper .progress .progress-bar").css("width", progress + "%");
$(".progress-wrapper .progress .progress-bar").attr("aria-valuenow", progress);
if (data.success === true) {
return $scope.setAlert(true, 'alert alert-success', 'Success!', "Video file uploaded");
}
});
在我的MVC控制器操作中,在文件上傳並保存后,我返回以下json:return Json(new {success = true});
我可以看到服務器返回的成功=真響應良性。
但是,腳本的這一部分似乎在獲得響應之前已執行:
if (data.success === true) {
return $scope.setAlert(true, 'alert alert-success', 'Success!', "Video file uploaded");
}
如何從MVC控制器發回的響應中設置警報
您應該使用fileuploaddone
事件。
它會在您的ajax執行后觸發。
例如:
$(document).ready(function() {
$("#fileupload").fileupload({
dataType: "json",
url: "/Videos/UploadVideoFile/?isrc=feffwefew",
autoUpload: true
}).on("fileuploadprogressall", function(e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$(".progress-wrapper .progress .progress-bar").css("width", progress + "%");
$(".progress-wrapper .progress .progress-bar").attr("aria-valuenow", progress);
}).on("fileuploaddone", function(e, data){
if (data.success === true) {
return $scope.setAlert(true, 'alert alert-success', 'Success!', "Video file uploaded");
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.