Ajax 요청 문제: 오류 800001
저는 jsp 페이지를 반환하는 요청이 있습니다.그러나 사실 jsp는 jsp:include를 포함하고 있으며(다른 jsp 파일을 호출함) 80020101이라는 오류를 표시합니다.
아이디어 있어요?
감사해요.
jQuery에서 AJAX를 호출할 때 어레이 끝에 다음과 같은 추가 쉼표를 전달하는 경우에도 이 오류가 발생할 수 있습니다.
$.post('http://example.com/example1/',{
field1:sField1,
field2:sField2,
field3:sField3,
field4:sField4,
field5:sField5,
},function(sData){
if (console) { console.log(sData); }
});
sField5 뒤에 쉼표 보여요?그것이 구문 오류입니다.IE 외에 다른 브라우저는 관심이 없습니다.IE는 모호한 800001 오류("자바스크립트를 평가할 수 없음 -- 구문 오류가 있음"을 의미)를 던질 것이며, 디버거가 jQuery의 평가 행만 가리키기 때문에 jQuery를 사용하는 경우 이 오류를 추적하는 것은 사실상 어려울 것입니다.마이크로소프트 덕분에 IE 디버거는 이를 쫓는 데 아무 소용이 없을 것입니다.다음 번에 800001 오류가 발생하면 다음과 같이 제안합니다.
- AJAX 호출이 있는지 확인하고 추가 쉼표를 찾습니다.
- 끝에 추가 쉼표가 있는 배열(예: 물결 괄호 안의 항목)을 찾습니다.
- 이 되지 , 이 사용하는 기술을 보세요.
<!--
그리고.//-->
당신의 자바스크립트를 표시합니다.이것은 1.7.2 이전까지 jQuery에서 알려진 문제였으며, 여전히 jQuery 팀의 파일 버그입니다. - jQuery의 최신 버전으로 이동합니다.
- 스크립트 블록에서 항목을 하나씩 제거하고 문제가 되는 코드 조각을 찾을 때까지 항목을 천천히 추가합니다.
src-attribute를 사용하여 스크립트를 가져오는 javascript 선언을 제거합니다.필요하다면 자바스크립트 파일을 인라인 자바스크립트로 변경하세요.
출처: http://bytes.com/topic/javascript/answers/750333-ie-syntax-error-80020101-undefined-array
가장 쉬운 방법은 ajax=1과 같은 매개 변수를 AJAX 요청에 추가하고 ajax-매개 변수가 요청에 있을 때 javascript 선언을 숨기는 것입니다.
브라우저는 당신이 사용하는 HTML 외에는 아무것도 모르기 때문에 이것은 jsp:include 파일을 포함하는 것과 관련이 없다고 생각합니다.
저는 이제 jQuery(최신 버전)에서 이 문제를 두 번 발견했습니다.유일한 해결책은 모든 자바스크립트를 복사하여 하나의 큰 파일에 붙여넣고 JSLint(jsfiddle.net , 선호)를 통해 실행하는 것입니다.문제를 해결할 수 있었던 몇 가지 사소한 오류(데이터 콜백 구조 중 하나에 추가 콤마 포함)를 지적한 다음 문제를 제거하기 위해 원래 위치에 다시 복사하여 붙여넣을 수 있었습니다.
http://jsfiddle.net/devlshone/QKxup/3/
저도 같은 오류가 있었지만 제 경우에는 예약된 단어가 있었습니다.'class'
다음은 이를 명확히 하기 위한 코드의 일부입니다.
function foo(ajaxResponse){
$(elem).attr('class', ajaxResponse.class);
}
나는 이것을 다음과 같이 다시 썼습니다.
$(elem).attr('class', ajaxResponse['class']);
이것이 도움이 되었기를 바랍니다.
제 경우 JS 코드에 다음과 같은 HTML 주석이 있는 것을 발견했습니다.
<script type="text/javascript">
<!-- Unexpected Comment -->
//code...
</script>
교체했습니다<!-- -->
와 함께/* */
그리고 그것은 성공하였다.누군가에게 도움이 되길 바랍니다.
저는 이 문제에 부딪혔고 IE의 오류 메시지는 별로 도움이 되지 않았습니다.그래서, 저는 Mozilla Firefox에 있는 제 사이트를 방문했고 Firefox는 문제가 있는 코드의 정확한 줄을 정확히 찾아낼 수 있었습니다.최신 기술 수정은 아니지만 이 문제를 디버깅하기 위해 IE만 사용한 경우 FF로 사이트를 로드하고(Firebug 확장이 설치되어 있음) 콘솔 출력을 확인해 보십시오.
저도 이 문제에 부딪혔지만, 제 스크립트 파일을 자세히 살펴본 후 다른 브라우저에서 원활하게 실행되는 작은 실수를 저질렀지만 선택하여 오류를 표시합니다.
이전 코드는 다음과 같습니다.
var autocomplete = new google.maps.places.Autocomplete(searchTextField ,options);
분석한 결과, 저는searchTextField
ID이며 사용하기 전에 값을 받아야 합니다.
그래서 다음으로 변경합니다.
var input = document.getElementById('searchTextField');
var autocomplete = new google.maps.places.Autocomplete(input,options);
그리고 그것은 잘 작동합니다.
IE에서 이를 감지하는 것은 정말 멋진 일이지만, Microsoft는 다른 브라우저에서 동일한 코드가 작동하면 매우 답답하기 때문에 특정 원인에 대한 특정 오류를 표시하도록 브라우저를 향상시킬 수 있습니다.
나의 경우 문제는 오류 기능의 끝에 있는 Ajax POST에서 쓸모없는 혼수상태가 추가된 것이었습니다.
$.ajax({
type: 'POST',
dataType: 'text',
url: '../Client/GetName',
data: { ClientId: id},
success: function (respone) {
alert(respone);
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.statusText);
}, //<- look here, this guy complicated my simple programmer life
});
제거한 후에는 모든 것이 정상적으로 작동합니다.
혹시 당신은 js 파일을 포함하고 있습니까?
왜냐면
오류 800001은 IE가 스크립트를 컴파일할 수 없음을 의미합니다.
jquery를 사용하는 동안 다른 문제로 인해 이 오류가 발생했습니다.
$(문서)를 변경합니다.ready(function(함수){}); TO $(창).load(함수(){});
제 경험을 공유하고 싶었습니다.저의 경우 자바스크립트와는 아무런 관련이 없습니다.동료의 HTML에서 각도를 사용하는 이 행 때문이었습니다.
<img data-ng-model="previewImage" src="" data-ng-src="{{imageURL}}" alt="" ></img>
저는 보통 src가 비어있는 것이 나쁜 것이라는 것을 기억했습니다.src 필드를 채웠더니 오류가 사라졌습니다.
jQuery 1.10.2를 사용하여 존재하지 않는 파일을 로드할 때 이 오류가 발생했습니다.
따라서 로드하려는 파일이 올바른지 확인하십시오. 그렇지 않으면 IE8에서 800001 오류가 발생할 수 있습니다.
문제의 원인은 다음과 같습니다.
var a = b = c = true;
로 전향한.
var a = true;
var b = true;
var c = true;
이제 잘 작동합니다!
안녕 MA
변수 선언 앞에 'var'를 붙이지 못해 문제가 해결되었다고 합니다.
<script>
uploadDocument = "Some message";
</script>
다음으로 수정했습니다.
var uploadDocument = "Some message";
근본 원인은 동일한 ID "upploadDocument"를 가진 폼의 요소가 있었기 때문에 위의 선언으로 인해 HTML이 잘못된 형식이 되었습니다.
언급URL : https://stackoverflow.com/questions/4918969/ajax-request-problem-error-80020101
'programing' 카테고리의 다른 글
passport.session() 미들웨어는 무엇을 합니까? (0) | 2023.07.26 |
---|---|
단일 리스트의 쌍 (0) | 2023.07.26 |
MariaDB - 기술 통계량에 대한 왜도 및 첨도 얻기 (0) | 2023.07.26 |
npm 글로벌 경로 접두사 (0) | 2023.07.26 |
파워셸을 사용하여 xml에서 속성 값을 가져오는 방법은 무엇입니까? (0) | 2023.07.26 |