2012-12-16 4 views
0

양식이 있습니다. 제출하면 성공 메시지가 동일한 페이지의 내 json 응답에서 인쇄되기를 원합니다.jsonery를 사용하여 json 응답에서 정확한 문자열을 가져올 수 없습니다.

json 응답에서 많은 값을 얻지 만 자바 동작에서 정의한 "메시지"라는 변수 만 필요합니다.

형식의 JSON 응답 내가 메시지 만 변수가 내 JSP 페이지에 인쇄 할이 응답에서이

 `{"errmsg":null,"jsonModel":null,"message":"Succussfuyly completed the task","model": 
     {"createdDate":null,"createrId":null,"id":null,"themeCaption":null,"themeName":null, 
     "themeScreenshot":null,"updateId":null,"updatedDate":null},"oper":null,"theme":{"createdDate":null, 
     "createrId":null,"id":null,"themeCaption":null,"themeName":null,"themeScreenshot":null, 
     "updateId":null,"updatedDate":null},"themeScreenshot":null}` 

같다. 내 jquery 코드 아래에서 모든 값이 내 JSP 페이지에 인쇄됩니다. 하지만 난 단지 messsage 변수를 원한다.

내가이 Output of my above jquery function 같은 출력에 geting하고 내 위 JQuery와 함수 나

+0

You'l JSP 기술에서 사용되는 함수에서 JSON 응답을 구문 분석하고 해당 변수를 출력해야합니다. –

+0

@adityamenon 어떻게 그럴 수 있습니까? 이것이 json의 첫 번째 프로그램입니다. 제발 –

+0

JSON이 페이지 안에 fron 리소스가 들어오는 경우, 제발 그게 왜 처음에 객체가 아닌 이벤트 데이터에서 문자열로 보내지는 거죠? 개체를 JSON으로 변환한다고 가정하고 원래 개체를 사용하는 대신 다시 변환해야합니다. – charlietfl

답변

1

귀하의 each 루프가 올바르게 그러나 당신은 단지 원하는 경우 작동이 문제를 해결하기 위해 도와주세요에서 index.jsp를

<script type="text/javascript"> 
    $(document).ready(function() { 
     $.subscribe('handleJsonResult', function(event,data) { 
      $('#result').html("<div id='languagesList'> <s:property value="Message"/> </div>"+'' + data.Message + ''); 
      var list = $('#languagesList'); 
        $.each(event.originalEvent.data, function(index, value) { 
          list.append('<h1>'+value+'</h1>\n'); 
        }); 
     }); 
    });  
     </script> 
     </head> 
     <body> 

    <img id="indicator" src="${pageContext.request.contextPath}/images/others/ajax-loader.gif" alt="Loading..." style="display:none"/> 
    <s:form action="updatethemeimageform" method="post" enctype="multipart/form-data" id="remoteform" theme="simple" > 
       <s:hidden value="%{#parameters.themeid}" name="themId"/> 
       <s:file name="themeScreenshot" label="Theme Screenshot" /> 
       <sj:a button="true" id="btnsid" buttonIcon="ui-icon-gear" dataType="json" indicator="indicator" onSuccessTopics="handleJsonResult" 
       formIds="remoteform" targets="result" >Submit This Form</sj:a> 
    </s:form> 

     <sj:div id="result" >  
      Json Result will come here 
     </sj:div> 



         `----------- 
         --------------- 
        private String Message; 

      public String updateThemesImage(){ 
    setMessage("Succussfuyly completed the task"); 
    return SUCCESS; 
       } 
        ------------ 
        ----------- 
        With getter & setters` 

몇 가지 특정 변수는 개체 표기법을 사용하여 검색합니다.

$.subscribe('handleJsonResult', function(event, data) { 
    $('#result').html("<div id='languagesList'> <s:property value="Message "/> </div>" + '' + data.Message + ''); 
    var list = $('#languagesList'); 

    var jsonData = event.originalEvent.data; 
     /* example retrieving ID and message*/ 
    list.append('<h1>ID:' + jsonData.id + ', Message:' + jsonData.message +'</h1>\n'); 

}); 
+0

예, 자동으로 json 응답을 데이터로 변환합니다 ('$ .subscribe ('handleJsonResult ', function (event, data) {'). 그러나 데이터에서 어떻게 특정 변수를 얻을 수 있습니까? –

+0

OK ... 나는 이미 객체라고 생각했습니다 ... 모든 parseJSON 아이디어가 트랙에서 벗어났습니다. – charlietfl

+0

updated ... 질문에서 정확히 무엇이 당신이 원하는지 명확하지 않습니다. 거기에는 몇 가지 다른 접근 방식이 있습니다. lly you want – charlietfl

관련 문제