2014-09-11 2 views
47

JS에 새로운 브랜드.
jquery/javascript를 사용하여 양식을 제출할 때 파일 입력 요소가 비어 있는지 확인하려고합니다. 나는 많은 해결책을 겪었으며 아무 것도 나를 위해 일하고 있지 않다. 나는를 사용하는 경우 나 파일 이름을 얻을 수 있습니다JQuery에서 입력 파일이 비어 있는지 확인하는 방법

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

수있는 유일한 방법입니다 : 내가 (다른 옵션이없는 경우를 제외하고)

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

이 작동하지 않습니다/C/fakepath을 피하기 위해 노력하고 있어요 다음 없습니다 :

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

이 경우에는 파일을 사용할 코드 예외 오류가 : cannot read property name of undefined 배열이 설정되어 있지 않기 때문에 의미가 . 하지만 난 이걸로 어떤 오류 처리 할 방법을 알아낼 수 없습니다.

파일 입력 요소 videoUploadFile을 올바르게 잡아서 비어 있는지 확인하고 비어있는 경우 오류 메시지를 던집니다.

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

'.files.length'를 확인하십시오. – Teemu

+3

왜 누군가가이 질문을 downvote 것입니까? 나는 때때로 그렇게 이해하지 못한다. 나는 당신에게 0으로 다시 upvoted. – Seano666

답변

84

그냥 그것의의 jQuery 버전이 입력 요소 여기

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

이것은 JQuery가 아니다. – josh123a123

70

에 포함 된 FileList 객체이다 files 재산의 길이를 확인 비어 있거나 없습니까?

Ans By의 : 나는 입력 파일이 비어 있는지 여부를 확인 여부를 jQuery 사용하여 파일 길이를 사용하여 위해이 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>

-1

질문 : 파일을 확인하는 방법

+1

왜 이것이 효과가 있었는지, 또는 원래 질문에서 무엇이 잘못 되었는가에 대한 더 자세한 설명은이 대답의 질을 높이는 데 도움이 될 것이다. –

+0

@ josh burgess이 답변은 jquery를 사용하여 양식을 제출할 때 파일이 비어 있는지 확인하는 방법이었습니다. –

2

를 사용하여이 문제를 풀기가 있고, 우리는 필요 다음과 같이 index을 사용하십시오.

var vidFileLength = $("#videoUploadFile")[0].files.length; 
if(vidFileLength === 0){ 
    alert("No file selected."); 
} 
관련 문제