2012-04-22 3 views
1

나는 양식이 있으며 사용자가 한 가지 유형의 파일 만 업로드 할 수 있도록 허용하려고합니다. 클라이언트 측 유효성 검사을 사용하지만 예상했던대로 파일 형식 유효성 검사가 작동하지 않습니다.파일 형식의 클라이언트 측 유효성 검사

validates :doc_type, :allow_blank => true, :format => {:with => /\A.*\.(pdf|PDF)\z/, :message => 'must be PDF file.'} 

또한

validates_attachment_content_type :doc_type, :content_type => { :content_type => "application/pdf" } 

그러나 잘못된 파일 형식에 대한 오류가 클라이언트 측 유효성 검사 통해 표시되지 않지만 일반적인 유효성 검사 오류로 : 나는이 두 가지 방법으로 파일 형식을 유효성 검증 시도 .

클라이언트 쪽 유효성 검사를 통해 유효성 검사 오류를 표시하는 방법이 있습니까?

답변

1

백엔드에 제출하기 전에 클라이언트 측에서 jquery 유효성 검사 플러그인을 먼저 사용하는 것이 좋습니다. 이렇게하면 프런트 엔드에서 파일 형식의 유효성을 검사 할 수 있습니다. 여기

http://docs.jquery.com/Plugins/Validation/Methods/accept

는 샘플입니다한다 "필드"가 필요하고 ".XLS"또는 ".CSV"로 끝나는.

$("#myform").validate({ 
    rules: { 
    field: { 
     required: true, 
     accept: "xls|csv" 
    } 
    } 
}); 

JQuery와 유효성 검사 플러그인을 사용하는 방법에 대한 좋은 점은 그것은 또한 등 이메일, 비밀번호, 같은 다른 의뢰인은 측 유효성 검사를 편리하게하는 것입니다