2017-10-10 2 views
-1

id가 #frmArchivos 인 양식의 필드의 유효성을 검사하려고하지만 해당 필드가 규칙을 준수하지 않는 양식을 제출할 때. 내 양식이로 구성되어있다 :JQuery 규칙이 입력 파일의 유효성을 검사하지 않습니다.

 <form id="frmArchivos" method="post" enctype="multipart/form-data" > 
        <input id="idHerramientas" value="" hidden="" readonly="" name="idHerramientas" /> 
        <div class="modal-body "> 
         <div class="row"> 
          <div class="col-md-12"> 
           <div class="form-group"> 
            <label for="inpArchivo">Archivo:</label> 
            <input type="file" id="inpfile" class="form-control" name="inpfile" /> 
           </div> 
          </div> 
         </div> 
        </div> 
     </form> 

그리고 내 스크립트는 이것이다 :

$.validate({ 
      form: '#frmArchivos', 
      rules: { 
       inpfile: { 
        required: true, 
        extension: "docx|rtf|doc|pdf" 
       } 
      }, 
      messages: { 
       inpfile: { 
        required: "input type is required", 
        extension: "select valid input file format" 
       } 
      } 
     }); 

어떤 문제가 될 수 있을까? $ ('# frmArchivos'). validate()와 같은 다른 태그로 시도했지만 콘솔에서 nodeType 에러가 발생했습니다. 나는 또한 물마루 html를 유효하게하는 것을 시도했다 그러나 그것을 배치 할 때 파일 확장자를 유효하게하지 않는다.

자세한 정보가 필요하면 알려주세요. 고맙습니다. 다음 코드

답변

0

시도

(function() { 
 

 
    var validator = null; 
 
    var frmArchivos = $("#frmArchivos"); 
 
    var inpfile = $("#inpfile"); 
 
    
 
    function initializeValidation() { 
 
     validator = frmArchivos.validate({ 
 
     rules: { 
 
      inpfile: { 
 
      required: true, 
 
      extension: "docx|rtf|doc|pdf" 
 
      } 
 
     }, 
 
     messages: { 
 
      inpfile: { 
 
      required: "input type is required", 
 
      extension: "select valid input file format" 
 
      } 
 
      } 
 
     }); 
 
    } 
 
    
 
    $(document).ready(function() { 
 

 
     initializeValidation(); 
 
     inpfile.change(function(){ 
 
     
 
     //Validate field 
 
     inpfile.valid(); 
 
     
 
     }); 
 

 
    }); 
 

 
})();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/jquery.validate.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/additional-methods.js"></script> 
 

 
<style>label.error{color: red;}</style> 
 

 
<form id="frmArchivos" name="frmArchivos"> 
 
    <input id="idHerramientas" value="" hidden="" readonly="" name="idHerramientas" /> 
 
    <div class="modal-body "> 
 
    <div class="row"> 
 
     <div class="col-md-12"> 
 
     <div class="form-group"> 
 
      <label for="inpArchivo">Archivo:</label> 
 
      <input type="file" id="inpfile" class="form-control" name="inpfile" /> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </div> 
 
</form>

사용 라이브러리 : JQueryValidate

+0


JQuery
가 – deduardolv

+0

과 시도 'inpfile.valid는 함수가 아닙니다'이 오류가 발생했습니다 '$ ("# inpfile")' – anayarojo

+0

당신이 usi인지 확인하십시오 라이브러리 [JQuery] (https://code.jquery.com/)와 [JQueryValidate] (https://cdnjs.com/libraries/jquery-validate). – anayarojo

관련 문제