반응형
ajax로 파일업로드할떄
contentType: false
processData: false
이 없으면 illegal invocation Error가 뜸.
결론: ajax로 파일 업로드할 때는
contentType: false
processData: false
======================================================
2021.03.04 내용 추가
Form 데이터를 감싸서 파일로 던질때는 전부다 Name으로 HTML태그로 넣어야지 데이터를 보낼 수 있고.
Form ID로 아래와 같이 감싸서 data를 Ajax로 보내야지만 back단으로 보낼 수 있다.
var formData = new FormData(vForm[0]);
이때 vForm은 해당 form의 ID를 넣어주면 됩니다.
아래는 예시
var vForm;
if (matchMedia("screen and (min-width: 1025px)").matches)
{
//pc
vForm = $("#SolutionQ_Form_pc");
}
else
{
//mo
vForm = $("#SolutionQ_Form_mo");
}
var formData = new FormData(vForm[0]);
$.ajax({
type: "POST",
url: "/HP_File/Upload_EmailFiles",
async: true,
dataType: "json",
contentType: false, //Ajax로 이메일 보낼 때 필수 추가 하여야 합니다.
processData: false, //Ajax로 이메일 보낼 때 필수 추가 하여야 합니다.
data: formData,
success: function (result) {
}
});
'IT > JS + Jquery' 카테고리의 다른 글
[JavaScript]쿠키 저장 , 쿠키 불러오기 , 쿠키 삭제 (0) | 2020.02.02 |
---|---|
[Jquery]영역 밖 클릭 시 이벤트 주기 (0) | 2020.01.16 |
[Javascript] Ajax에 프로그래스 바 넣기 (0) | 2019.12.12 |
[JavaScript]XML 파싱 function (0) | 2019.11.07 |
[JavaScript] 자바스크립트로 내 IP확인하기_(공인ip) (0) | 2019.10.18 |