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 호환성 모드도)는 구현하지 않기 때문에 포함시킬 필요가 있습니다.
갱신하다
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
'programing' 카테고리의 다른 글
POST 대신 OPTIONS로 전송된 Angular로부터의 HTTP 요청 (0) | 2023.03.06 |
---|---|
Angularjs에서 모듈의 "실행" 방식으로 종속성 주입 (0) | 2023.03.06 |
Spring Boot 401 보안 없음에도 인증되지 않음 (0) | 2023.03.06 |
Spring Runner vs Spring Boot시험 (0) | 2023.03.06 |
$product_id - Woocommerce가 있는 항목 제거 (0) | 2023.03.06 |