Comment vérifier si le fichier d'entrée est vide dans JQuery

Neuf à JS.
J'essaie de vérifier si l'élément de saisie du fichier est vide lorsque vous soumettez le formulaire avec jquery / javascript. J'ai traversé un tas de solutions et rien ne fonctionne pour moi. J'essaie d'éviter le / c / fakepath (à moins qu'il n'y ait pas d'autre option)

<input type="file" name="videoFile" id="videoUploadFile" /> 

cela ne fonctionne pas:

 var vidFile = $("#videoUploadFile").value; 

La seule façon d'obtenir le nom de fichier est si j'utilise ce qui suit:

 var vidFile = document.getElementById("videoUploadFile").files[0].name; 

S'il n'y a pas de fichier disponible, le code lance une erreur: cannot read property name of undefined qui a du sens car le tableau n'est pas défini. Mais je ne peux pas comprendre comment effectuer une gestion des erreurs avec ceci.

Comment puis-je saisir correctement l'élément de saisie du fichier videoUploadFile , vérifier s'il est vide, lancer un message d'erreur s'il est vide?

Il suffit de vérifier la longueur de la propriété des fichiers , qui est un objet FileList contenu sur l'élément de saisie

 if( document.getElementById("videoUploadFile").files.length == 0 ){ console.log("no files selected"); } 

Voici la version jQuery de celle-ci:

 if ($('#videoUploadFile').get(0).files.length === 0) { console.log("No files selected."); } 

Questions: comment vérifier le fichier est vide ou non?

Réponse: J'ai développé ce problème en utilisant ce code Jquery

 //If your file Is Empty : if (jQuery('#videoUploadFile').val() == '') { $('#message').html("Please Attach File"); }else { alert('not work'); } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="file" id="videoUploadFile"> <br> <br> <div id="message"></div>