Jquery

ajax popup 창 띄우기

SeoHW 2018. 1. 18. 18:28
SMALL

// ajax process $.ajax({ url:"url주소", method:"POST", data:formData, dataType:"html", success: eventSuccess, error: function(xhr, status, error) {alert(error);} }); function eventSuccess(data) { window.open("주소","_blank"); }


위와 같이 하게 되면, 크롬에서는 팝업을 블락(차단) 처리 해버립니다. 여러가지 테스트를 해본 결과로는, 자바스크립트의 함수를 호출(혹은 이벤트 발생) 후 일정 시간 뒤에 팝업이 실행되는 경우에, 차단하는 것이 아닐까 추측해봅니다. 


결론적으로는, 다음과 같이 해결을 하였습니다.

// 미리 팝업을 띄워놓고. var w = window.open("about:blank","_blank"); // ajax process $.ajax({ url:"url주소", method:"POST", data:formData, dataType:"html", success: eventSuccess, error: function(xhr, status, error) {alert(error);} }); function eventSuccess(data) { //여기서 팝업된 창의 주소를 변경하자. w.location.href = "팝업주소"; }


팝업창을 미리 띄워놓은 후에, 그 주소를 변경하는 방식입니다. 


출처 = http://e2xist.tistory.com/553


LIST