제목 | ajax 질문. | ||
---|---|---|---|
글쓴이 | 코드이그맨 | 작성시각 | 2016/06/21 10:45:16 |
|
|||
<script> $(document).ready(function () { var json_obj; var param = {}; //Board List Load $.ajax({ url: "http://test.kr/Board/list_get", type: "GET", dataType: "json", success: function (data) { json_obj = data; }, error: function (request, status, error) { alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error); } }); alert(json_obj[0].contents); alert("여기까지 옴?"); /* var contents = document.getElementById("table_contents").innerHTML var row = contents; row = row.split("[num]", json_obj[0].name); row = row.split("[title]", json_obj[1].title); row = row.split("[name]", json_obj[1].name); $("#board_table_body").append(row);*/ // $("#table_contents") }); //ready() </script> <script id="table_contents" type="text/html"> <tr> <td>[num]</td> <td>[title]</td> <td>[name]</td> </tr> </script>
위와 같은 코드가 있습니다. success 에서 받아서 찍어보면, 잘 넘어오는데 여기까지 잘오냐? 거기에서 찍어볼라고 하면 에러가 날까요?? ncaught TypeError: Cannot read property '0' of undefined
위와 같은 에러가 나옵니다 ㅠㅠㅋ |
|||
다음글 | 웹 모바일 간 쿠키문제.. (6) | ||
이전글 | view에서 객체 배열을 어떻게 사용하는지;; (4) | ||
kaido
/
2016/06/21 11:01:32 /
추천
0
|
kaido
/
2016/06/21 11:06:26 /
추천
0
그리고 노파심에 하나 더 넣어드리자면... script 에서 리스트 배열 처리 방법은 $.each(data.contents, function (key, value) { alert(key+"__"+value["name"] ); }); each 를 사용해서 간단 합니다. |
미나리
/
2016/06/21 11:27:03 /
추천
0
음.. ajax success 부분에서 이상없이 실행이 되신다는거 보면요. ajax 동기화 문제일 수 도 있어요. 뭐냐면 ajax는 비동기 방식이라 ajax로 요청을 했으나 스크립트는 계속 진행 그 후에 ajax success 부분이 실행 이런식으로 진행이 되는 경우가 있어요. 확인 방법은 ajax success 부분과 스크립트 끝 부분에 각각 alert나 console.log 찍어보시면 나중에 ajax success 부분이 늦게 실행되시면 ajax 비동기로 늦게 리턴받는 거에요. 그때는 ajax 옵션에 async:false 추가하시면 동기방식으로 변경됩니다. |
코드이그맨
/
2016/06/21 12:47:04 /
추천
0
답글 감사합니다!
일단 success : function(){
}
위 함수부분에서 -_- 불러와서 돌리는걸로 일단, 그렇게 하고있는데.. 카이도님이 알려주신 방법은 일단 다 만들고 나서 한번 수정해서 다시 해보도록 할게요. 미나리님도 답변 감사합니다. |
리턴값의 형태를 잘못 받아오거나, 호출하는 부분에서 잘못 호출 하고 있습니다.
에러메세지 그대로
마법의 코드를 전수해 드리지요.
확인해보세요. 리턴된 형태가 생각 하신 것과 다를것입니다.