잠시만 기다려 주세요


 
HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (771)  |  추천 및 재미 (15)  |  자료실 (16)  |  끄적거림 (439)  |  시나리오 (757)  |  드라마 대본 (248)  |  

2019년 05월 23일
지난 일은 굳이 기억하려고 하지 말자. 잊어야 산다. - 바다아이
 

    javascript/jquery

javascript/jquery - JQuery ajax 에러 error 코드가 code 0.
이 름 : 바다아이   |   조회수 : 1942         짧은 주소 : https://www.bada-ie.com/su/?81523092676
form에서 submit할때 호출되는 함수에서 ajax로 뭔가를 처리 하는데 에러가 뜬다.
alert으로 에러 코드를 찍어보니 code 값으로 0을 뱉어 낸다.

아래는 submit 버튼을 누르면 form의 submit_check()함수가 호출되고,
form이 submit되는 간단한 구조의 form이다.

function submit_check(){
   jQuery.ajax({
      type:"GET",
      url: target_url,
      success:function(msg){
          //성공!
      },
      error: function(xhr,status,error){
          //에러!
          alert("code:"+xhr.status);
      }
   });

   f.action = submit_url;
   return true;
}


에러 0의 의미가 더 있을진 모르지만 2가지를 알아 봤다.

In my experience, you'll see a status of 0 when either doing cross-site scripting (where access is denied) or requesting a URL that is unreachable (typo, DNS issues, etc).

1. 대충 뭐, 접근 거부 된거나 DNS 문제 등으로 접속 안되는 주소로 연결 했을때.

It's could be possible to get a status code of 0 if you have sent an ajax call and a refresh of the browser was trigger before getting the ajax response. The ajax call will be cancelled and you will getting this status.

2. ajax 호출하고 반환값을 받아와야 되는데, 이 반환값이 도착 하기전에 submit 또는 새로고침 등으로 페이지 이동이 발생해 버리는 경우.

내 문제는 2번이다. 저 위의 form에서 onsubmit 부분은 지워 버리자. ajax가 끝 날때 submit 되야 하는데, 저건 곤란하다. 어찌 됐건 함수가 끝나면 submit 되버리니까.

<input type="button" onclick="submit_check()" value="submit">

버튼 type은 button으로, 이벤트도 달아서 변경해 준다. 그리고 아래는 바뀐 함수.

function submit_check(){
   jQuery.ajax({
      type:"GET",
      url: target_url,
      success:function(msg){
          //성공!
         document.logFrm.action = submit_url;
         document.logFrm.submit();
      },
      error: function(xhr,status,error){
          //에러!
          alert("code:"+xhr.status);
      }
   });
}


이렇게 되면, 버튼을 눌렀을때 함수가 실행되며 ajax 발사!
submit_check() 함수는 실행을 마쳐도 form은 submit 되지 않는다.
ajax가 무사히 반환값을 가지고 돌아오면 그때 form을 submit 시킨다.

꿀같은 출처는 역시 스택오버플로우.
http://stackoverflow.com/questions/2000609/jquery-ajax-status-code-0


출처 : http://cricri4289.blogspot.kr/2013/10/jquery-ajax-error-code-0.html
 
| |


      1 page / 3 page
번 호 카테고리 제 목 이름 조회수
71 javascript/jquery , ... 바다아이 329
70 javascript/jquery , timezone, , ... moment.js 바다아이 328
69 javascript/jquery textarea cursor . focus, cursor ... 바다아이 402
68 javascript/jquery (block) , ... 바다아이 415
67 javascript/jquery textarea cursor , , focus 바다아이 406
66 javascript/jquery jquery ajax option .... 바다아이 488
65 javascript/jquery jquery open api , ajax JSONP cross domain , , error 0 ... sop 바다아이 445
64 javascript/jquery javascript , , , , () 바다아이 556
63 javascript/jquery javascript (date ) 바다아이 592
62 javascript/jquery CSS3 javascript 바다아이 476
61 javascript/jquery javascript , cookie, , , , , 바다아이 690
60 javascript/jquery javascript 바다아이 848
59 javascript/jquery javascript / , , , 바다아이 895
58 javascript/jquery url , , encode, decode ... 바다아이 652
57 javascript/jquery javascript ... frame location.href 바다아이 773
56 javascript/jquery File Upload Progress, .... . 바다아이 813
55 javascript/jquery javascript, json , json Highlight 바다아이 898
54 javascript/jquery javascript json , , JSON.stringify, JSON.parse, 바다아이 904
53 javascript/jquery javascript innerHTML, innerTEXT ... 바다아이 833
52 javascript/jquery javascript entity , , encode, decode 바다아이 854
51 javascript/jquery javascript post, get , 바다아이 1054
50 javascript/jquery text copy, , How to copy a TEXT to Clipboard on a Button-Click 바다아이 1156
49 javascript/jquery jquery autocomplete , , . 바다아이 919
48 javascript/jquery javascript, jquery, , autocomplete 바다아이 1034
47 javascript/jquery substring, substr, indexOf, lastIndexOf (javascript , , ) 바다아이 966
46 javascript/jquery Javascript event.keyCode , , ACSII 바다아이 824
45 javascript/jquery url encode decode , , , javascript 바다아이 1379
44 javascript/jquery javascript 바다아이 809
43 javascript/jquery javascript, textarea tap . 바다아이 852
42 javascript/jquery , 2.... 바다아이 825
| |






Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : New Jersey  실행시간 : 0.03282
to webmaster... gogo sea. gogo sea.