我的问题是测量文件上传不会测量文件的后端处理,所以进度表填充到100%然后你必须等待更多的服务器后端处理响应之前的文件。
我可以使用semantic-ui添加进度表,并在文件上传期间填充,但文件处理需要更长的时间,即使文件上传完成,您也会等待服务器的响应。我正在考虑重构整个解决方案,并且可能使用等待符号代替和/或停用(灰色)整个页面并在上传+处理文件时打印“请稍候......”。
这是个好主意吗?代码来自语义ui框架(进度表),page是在线的,如果你想看看并尝试实际的服务器响应和文件处理。
另一个想法是使用两个进度表,那更好吗?
$(function () {
var bar = $('.bar');
var percent = $('.percent');
var status = $('#status');
$('form').ajaxForm({
url: 'http://127.0.0.1:8080/_ah/upload/ahFkZXZ-bW9udGFvcHJvamVjdHIiCxIVX19CbG9iVXBsb2FkU2Vzc2lvbl9fGICAgICAoPoIDA',
beforeSend: function () {
status.empty();
var percentVal = '0%';
bar.width(percentVal);
percent.html(percentVal);
},
uploadProgress: function (event, position, total, percentComplete) {
var percentVal = percentComplete + '%';
bar.width(percentVal);
percent.html(percentVal);
},
complete: function (xhr) {
$('#wrapper').html(xhr.responseText);
}
});
});