2012-06-04 5 views
2

JSON 개체를 반환하는 서블릿에 JQuery를 사용하여 Ajax 호출을 작성하려고합니다. JSP 페이지에서 양식이 있습니다. 처음에는 양식에서 데이터를 얻는 방법을 모르겠으니 .serialize를 발견했습니다.Jquery Ajax 서블릿 호출

$(document).ready(function() { 
    $("#submit").click(function blabla() { 
     var formData = $('form').serialize(); 
     $.ajax({ 
      type: "POST", 
      url: "/ArchiveSearch/Search", 
      dataType: "json", 
      data: formData, 
     }); 
    }); 
}); 

정보는 다음과 같은 형식에서 온다 :

<form method= post"> 
      <div class="searchCiteria"> 
       <div id="searchValueBlock1"> 
         <div><span class="label">Case ID:</span><input type="text" name="messagecaseid" size="25"/></div> 
         <div><span class="label">Onderwerp:</span><input type="text" name="messagesubject" size="25" /></div> 
         <div><span class="label">Afzender:</span><input type="text" name="messagesender" size="25"/></div> 
         <div><span class="label">Ontvanger:</span><input type="text" name="messagereceiver" size="25"/></div> 
       </div> 

       <div id= "searchValueBlock2"> 
        <div><span class="label">Datum:</span><input type="text" name="date1" size="25"/></div> 
        <div><span class="label"></span><input type="text" name="date2" size="25"/></div> 

        <div class="submit"> 
         <input type="submit" value="Search"> 
        </div> 
       </div> 
      </div> 
      </form> 

내가 형태로 작업 매개 변수를 사용하는 경우 서블릿 repondes가해야 같은

나는 다음과 같은 자바 스크립트가 있습니다. 하지만 Ajax 전화가 작동하지 않는 것 같습니다.

내가 뭘 잘못하고 있니?

+0

관련 항목 : http://stackoverflow.com/questions/4114742/simple-calculator-in-jsp 대답은 기본적으로 JSP/Servlet에서 Ajax를 사용하는 것에 대한 간단한 자습서입니다. – BalusC

답변

1

는 폼 ond의 action 속성의 URL로 사용자를 리디렉션합니다 아약스 기능

 
$.ajax({ 
      type: "POST", 
      url: "/ArchiveSearch/Search", 
      dataType: "json", 
      data: formData, 
success: function(data) { 
    $('.result').html(data); 
    alert('Load was performed.'); 
    } 
});

+0

데이터 var는 서버의 응답을 보유하고 있는데, 성공할 때 함수 (데이터) {경고 (데이터)} 팝업 창이 표시되지 않습니다. – TrashCan

+0

추가 경고를 추가하면 데이터 함수 다음에 두 경고가 모두 표시됩니다. – TrashCan

1

제출 버튼의 디폴트의 동작은, POST 형태이며,에 성공 PARAM를 추가해야합니다. 당신이하지 않으면 (당신이해야 할 ...) 행동 속성이 페이지를 다시로드합니다. 페이지가 다시로드되지 않게하려면 $("#submit").click 함수 끝에 false을 반환하여 기본 동작을 방지해야합니다.