다잘하고싶어

IE에서 특정 함수가 작동되지 않는 에러 본문

에러

IE에서 특정 함수가 작동되지 않는 에러

챙영잉 2024. 12. 9. 17:02

 

 

Chrome , Microsoft Edge 환경에서는 정상적으로 실행되는 소스가 IE 에서는 작동되지 않는 상황이었다.

 

구체적으로는  'jsAjaxCall'이(가) 정의되지 않았습니다. 라는 에러가 발생하는 상황,

즉 선언되어 있는 함수를 인식하지 못하는 상황이었다.

 

해당 에러 해결을 위해 아래의 내용을 실행해봤지만 상황은 같았다.

추측1 >  IE에서 jQuery Ajax 요청이 캐싱되는 상황이 발생했다.

   >> 아래의 전역코드와 지역코드를 활용하여 캐싱이 발생하지 않도록 코드를 수정했지만 같은 에러가 발생했다.

//전역코드
$.ajaxSetup({ cache: false });

//지역코드
$.ajax({ cache: false, //other options... });
 

 

추측2 > 스트립트 충돌 문제

크롬에서는 스크립트 충돌을 자체적으로 잡아주지만, IE에서는 충돌을 자동으로 잡아줄 수 없기때문에 발생하는 문제 

  >> 그렇지만 모든 스트립트를 통틀어서 function 명이 동일하게 선언되어 있는 경우는 없었다.

 

이 과정을 거치면서 보니 애초에 ajax 로 호출한 함수안으로 들어가지 않는 다는 것을 확인했다.

 

그래서 IE에서 호환되지 않는 문법을 확인해보니

1. 람다식    

2. include 함수가 있었다.

 

초기 Load 시에 실행되는 함수에서 발견된 람다식을 일반 함수로 바꿔주니!!!

해결됐다..

 

 

 

 

 

 

 

 


참고

https://stackoverflow.com/questions/4303829/how-to-prevent-a-jquery-ajax-request-from-caching-in-internet-explorer

 

How to prevent a jQuery Ajax request from caching in Internet Explorer?

How do I prevent a jQuery Ajax request from caching in Internet Explorer?

stackoverflow.com

 

https://fruitdev.tistory.com/195

 

 

 

 

'에러' 카테고리의 다른 글

pc <-> pc SSH연결하기  (0) 2025.09.24
오라클 멀티테넌트 환경  (5) 2025.08.12
javax.management.InstanceNotFoundException 에러  (1) 2024.11.29