2011-10-11 2 views
3

제 질문에 여러 번 대답했지만 아직도 저를 위해 하나의 작업을 만드는 방법을 알 수 없습니다. 나는 포럼을 읽음으로써 나의 문제를 해결하기 위해 2 일간 노력하고있다. 그러나 내가 찾을 수없는 기본적인 것들과 아마도 당신의 도움이 필요할 것입니다.getJson을 사용하여 JSON을 읽을 수 없습니다.

나는 코드

 JSONObject json = new JSONObject(); 
    for(int i=0; i<20; i++){ 
     JSONObject jsonItem = new JSONObject(); 
     jsonItem.put("position", positions[i]); 
     json.accumulate("group", jsonItem); 
    } 

    String output = json.toString(); 

    response.setContentType("application/json");  
    PrintWriter out = response.getWriter(); 
    out.print(output); 
    out.flush(); 

을 (적어도 난 그렇게 생각)을 JSON을 만들고 여기에 서블릿이 난 다음 무엇입니까 서블릿 실행하는 경우 :

{ 
    "group": [ 
    { 
     "position": 235 
    }, 
    { 
     "position": 61 
    }, 
    { 
     "position": 248 
    }, 
    { 
     "position": 206 
    }, 
    { 
     "position": 26 
    }, 
    { 
     "position": 329 
    }, 
    { 
     "position": 176 
    }, 
    { 
     "position": 180 
    }, 
    { 
     "position": 218 
    }, 
    { 
     "position": 83 
    }, 
    { 
     "position": 177 
    }, 
    { 
     "position": 142 
    }, 
    { 
     "position": 17 
    }, 
    { 
     "position": 249 
    }, 
    { 
     "position": 310 
    }, 
    { 
     "position": 369 
    }, 
    { 
     "position": 251 
    }, 
    { 
     "position": 256 
    }, 
    { 
     "position": 337 
    }, 
    { 
     "position": 63 
    } 
    ] 
} 

내 jQuery를 다음과 같습니다

$(document).ready(function(){ 
    $("#clickMe2").click(function(){ 
     alert("something2"); 
    $.getJSON("/RandomNumGen",function(result){ 
     alert("something3"); 
     $.each(result, function(i, field){ 
     $("#myTarget").append(field + " "); 
     }); 
    }); 
    }); 
}); 

어쩌면 읽는 것이 옳은 방법은 아니지만 두 번째 경고 "something3"에 절대로가서는 것은 아닙니다. 그래서 나는 결코 JSON을 읽지 않을 것이라고 생각한다. 여러 가지 방법으로 읽으려고했지만 문제는 결코 JSON을 읽지 않는 것 같습니다.

나는 서블릿을 톰캣 7.0.22에서 실행 중이고 웹에 xml이 필요하지 않지만 실행 중이 지 않은 것을 의미하는 @WebServlet("/RandomNumGen")을 가지고 있기 때문에 web.xml도 작성하기로했다. . 이상한 일은 한 번 MIME "text/html"로 반환하려고 시도했을 때 보통 $.get을 얻으면 브라우저에서 [Object object]을 인쇄합니다.

분명히 나는 ​​JSON을 사용하지 않았으며 튜토리얼을 통해 빨리 실행하므로 기본을 놓칠 수도 있습니다.

답변

2

jquery가 잘못되었습니다. $.each을 변경해야합니다. http://jsfiddle.net/xV2vx/

+0

이 jsfiddle.net 나를 도입에 대해 보정 주셔서 감사합니다 더이 아웃이

$.each(result.group, function(i, field){ $("#myTarget").append(field.position + " "); }); 

확인하십시오! 그러나 나는 나의 잘못된 "각"이 "경고 ('something3')를 제대로 실행하지 않는 이유라고 생각하지 않습니다 ... –

관련 문제