我有一个上传表单,应该在文件上传时显示进度条。该表单使用jQuery Validate插件来限制文件类型。
使用我当前的代码,即使没有选择文件或文件类型不匹配,也会在按下提交按钮后立即显示进度条。
为什么会发生这种情况?
$(document).ready(function() {
$('#document_upload').validate({
rules: {
uploaded_file: {
required: true,
accept: "pdf|jpg|gif|png"
}
},
errorPlacement: function(error, element) {
return true;
}
});
$('#document_upload').submit( function() {
$('#upload_progress').show();
});
})
答案 0 :(得分:0)
提交时是否收到正确的错误消息?我假设是这样,因为显示进度条,因此不会发送表单。
文件是如何上传的?它只是标准<input type="file">
吗?
这将始终在提交时显示上传者,因此您需要添加一些检查
$('#document_upload').submit( function() {
$('#upload_progress').show();
});
您可以尝试添加的内容是:
if($("#document_upload input[name=uploaded_file]").length >= 1){
$('#upload_progress').show();
}
你能在jsfiddle.net上设置一个例子吗?