2011-02-08 1 views
2

내가이 입력 파일 HTML 양식이 있습니다제출 양식을 활성화하기 전에 jquery forms checking?

<input type="file" id="file" class="file customfile-input" name="file_upload"> 

을 그리고 난이 버튼을 제출이 :

<input type="submit" value="Publish!" id="publish_button" name="submitPhoto" class="yellow_gradient big_button"> 

내가 입력 파일 필드가 작성되었는지 확인 checkes JQuery와 스크립트를하고 싶어 제출 단추를 활성화하기 전에 파일로. 감사합니다 :))에 대해 어떻게

답변

1

:

$("#file").bind("change", function() { 
    $("#publish_button").attr("disabled", this.value.length === 0); 
}); 

이 바로 파일 입력 변경 내부의 값 후 #publish_button을 다시 활성화합니다.

근무 예 : http://jsfiddle.net/andrewwhitaker/hUDUC/1/

+1

@getaway -주의 : 제출 버튼 자바 스크립트 비활성화 (자바 스크립트를 지원하지 않는 포함하여 화면 판독기)로 처음 사람을 비활성화로 양식을 제출 할 수 없습니다. Javascript를 통해 초기에 비활성화하는 변경 사항은 http://jsfiddle.net/hUDUC/2/를 참조하십시오. –

+0

@StephenP : 좋은 지적입니다! 당신은 JS를 마크 업으로부터 보호하기 위해서'bind' 호출 전에 스크립트를 추가 할 수 있습니다. –

+0

예, 저는 보통 별개의'.js' 파일에있는 모든 자바 스크립트를 가지고 있습니다 만,'.ready()'를 사용할 때에도 누군가가 버튼을 클릭하도록 허용하는 경주가 있습니다. 전에 이의 제기를 제기했다. –