Novo em JS.
Estou tentando verificar se o elemento de entrada do arquivo está vazio ao enviar o formulário com jQuery / JavaScript. Eu passei por um monte de soluções e nada está funcionando para mim. Estou tentando evitar o /c/fakepath
(a menos que não haja outra opção)
<input type="file" name="videoFile" id="videoUploadFile" />
Isso não funciona:
var vidFile = $("#videoUploadFile").value;
A única maneira de obter o nome do arquivo é usando o seguinte:
var vidFile = document.getElementById("videoUploadFile").files[0].name;
Se não houver nenhum arquivo disponível, o código gerará um erro:
não pode ler o nome da propriedade de indefinido
o que faz sentido porque a matriz não está definida. mas não consigo descobrir como fazer qualquer tratamento de erros com isso.
Como faço para obter corretamente o elemento de entrada do arquivo videoUploadFile
, verificar se está vazio e lançar uma mensagem de erro se estiver vazio?
var files = $('#formbody').find('input[type=file]').filter(function() { return $(this)[0].files.length > 0; });
.files.length
?