programing

Internet Explorer의 JavaScript에서 'JSON'이 정의되지 않은 오류입니다.

css3 2023. 3. 6. 21:21

Internet Explorer의 JavaScript에서 'JSON'이 정의되지 않은 오류입니다.

어플리케이션에서 jQuery를 사용하고 있습니다.jQuery 플러그인을 사용하여 JavaScript 세션을 구현했습니다.

Firefox 및 대부분의 Internet Explorer 8 브라우저에서 올바르게 작동합니다.

그러나 일부 Internet Explorer 8 브라우저에서는 작동하지 않습니다.다음과 같은 에러가 발생합니다.

Message: 'JSON' is undefined
Line: 6
Char: 3
Code: 0


Message: '$.namesession' is null or not an object
Line: 53
Char: 2
Code: 0

`

Internet Explorer 버전은 두 경우 모두 동일합니다.

그러나 인터넷 옵션의 [상세설정]탭에 있는 [SSL3.0 사용]체크박스와 [스마트 스크린필터 활성화]체크박스는 오프가 되어 있습니다

확인해보니 작동하기 시작했어요.우리가 그것들을 선택했을 때 그것은 여전히 작동하고 있었다.

IE8의 실제 문제는 무엇입니까?

당신이 찾고 있는 것이 아닐지도 모르지만, 저도 같은 문제가 있어서 JSON 2를 포함한 어플리케이션을 해결했습니다.

https://github.com/douglascrockford/JSON-js

다른 브라우저는 네이티브로 JSON을 구현하고 있지만 IE < 8 (IE 8 호환성 모드도)는 구현하지 않기 때문에 포함시킬 필요가 있습니다.

관련 질문: IE6(IE7)의 JSON

갱신하다

JSON 파서는 갱신되었으므로 새로운 파서를 사용해야 합니다.http://bestiejs.github.io/json3/

<!DOCTYPE html>

그렇지 않으면 IE8은 올바르게 동작하지 않습니다.또, 다음의 것도 사용할 필요가 있습니다.

<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />

당신의 프로젝트에 json2.js를 추가해주세요.제가 수정한 것과 같은 문제에 직면했습니다.

https://raw.github.com/douglascrockford/JSON-js/master/json2.js 링크를 사용하여 새 파일을 생성하십시오.json.js페이지와 과거 파일을 새로 작성한 파일에 복사하고 해당 파일을 웹 응용 프로그램으로 이동합니다.

잘 됐으면 좋겠어요.

JSON 응답에 여분의 쉼표가 있는지 확인합니다.어레이의 마지막 요소에 쉼표가 있으면 IE에서 쉼표가 끊어집니다.

콘텐츠 유형을 'application/x-www-form-urlencoded'로 변경합니다.

나도 최근에 똑같은 문제가 있었어.제 경우 php 스크립트의 상단에서 브라우저에 대한 몇 가지 추가 출력이 있었습니다.빈 행(?>와 html-tag 사이)을 삭제하고 간단한 청소로 도움이 되었습니다.

<?php 
include('../config.php');

//

ob_clean();
?>
<!DOCTYPE html>

이 에러는 2번 있었습니다.그때마다 아약스 타입을 변경하여 해결했습니다.GET to POST 또는 POST to GET 중 하나.

$.ajax({
        type:'GET', // or 'POST'
        url: "file.cfm?action=get_table&varb=" + varb
    });

언급URL : https://stackoverflow.com/questions/5339232/json-is-undefined-error-in-javascript-in-internet-explorer