반응형
이전에 formData를 이용한 ajax 파일 업로드에 대해 포스팅 한 적이 있다.
당시에 formData는 IE9에서 지원이 되지 않는등의 문제가 있다고 말씀드렸는데, 오늘은 그 대안으로 ajaxForm 플러그인을 소개한다.
현재로서는 ajax로 파일을 업로드할때 가장 널리 사용하는 방법이 아닐까 싶다.
<script type="text/javascript" src="jquery-3.2.1.min.js"></script> <script type="text/javascript" src="jquery.form.min.js"></script> <script> function upload(){ $("#frm").ajaxForm({ url : "/upload.do", enctype : "multipart/form-data", dataType : "json", error : function(){ alert("에러") ; }, success : function(result){ alert("성공") ; } }); $("#frm").submit() ; } </script> <form name="frm" id="frm" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" id="upfile"> </form> <a href="javascript:upload();">등록</a>
참고로 오래전에 리턴받는 데이터에 개행문자가 포함되어 있을경우 정상적으로 리턴데이터를 받아오지 못하는 버그가 있었던걸로 기억한다.
이 부분에 대해선 주의할 필요가 있을 듯 싶다.(지금은 개선이 되었는지도 ...)
참고 : http://malsup.com/jquery/form/
'Language > JQuery' 카테고리의 다른 글
[Javascript] undefined, null 체크 함수 (1) | 2017.07.14 |
---|---|
[jQuery] ajax 전역 이벤트(Ajax Global Event) (1) | 2017.03.06 |
[Javascript] DOM 객체 ID 존재여부 확인하기 (1) | 2016.12.06 |
[jQuery] IE Ajax cache 관련 오류. (1) | 2016.10.13 |
[JQuery] input 객체 - readonly, disabled 처리 (1) | 2016.07.06 |