2012-12-28 2 views
9

다른 jsp 파일로 데이터를 전달하는 코드 스 니펫이 있습니다.jspery를 사용하여 Jsp ajax 호출

는 자바 스크립트 HTML

<body> 
    Name:<input type="text" id="name" name="name"> 
    <br /><br /> 
    Age :<input type="text" id="age" name="age"> 
    <br /><br /> 
    <button id="click">Click Me</button> 
    <div id="response"></div> 
</body> 

및 pageTwo.jsp에서

$(document).ready(function() { 
    $("#click").click(function() { 
     name = $("#name").val(); 
     age = $("#age").val(); 
     $.ajax({ 
      type : "POST", 
      url : "pageTwo.jsp", 
      data : "name=" + name + "&age=" + age, 
      success : function(data) { 
       $("#response").html(data); 
      } 
     }); 
    });  
});  

, 내 코드는

<% 
    String name = request.getParameter("name"); 
    String age = request.getParameter("age"); 
    out.println(name + age); 
%> 

하지만 일이다 내 Jquery에 실수가 있니? 누구 도와 줄 수 있니?.

답변

4
$("#click").click(function(e) { 
    // e.preventDefault(); 
    ... 
    return false; 
}); 

물론 firebug를 설치하거나 크롬 기본 개발자 도구 (f12)를 사용하십시오. 콘솔을 열고 코드를 실행하십시오.

+0

왜 "false false"입니까? 필요한? 그것은 작동하지만 왜 이해가되지 않습니다. – Gabrer

+1

"false"를 반환하면 기본 동작이 중지됩니다. "#click"이 링크라고 말하자. 이제 클릭하면 "return false"가있는 경우 브라우저 기본 동작을 수행하지 않습니다. 이제는 일부 페이지 (href url)로 리디렉션됩니다. "return false"콜백 내에 코드의 끝에 넣어야합니다. 또한 "e.preventDefault();"를 사용할 수 있습니다. 콜백 함수 안에 코드의 맨 위에 놓을 수 있습니다. – HamidRaza

+0

감사합니다. 매우 명확하고 빠른 :) – Gabrer

1
$(document).ready(function() { 
    $("#click").click(function() { 
     name = $("#name").val(); 
     age = $("#age").val(); 
     $.ajax({ 
      type: "POST", 
      url: "pageTwo.jsp", 
      data: "{'name':'" + name + "','age':'" + age + "'}", 
      contentType: "application/json", 
      async: false, 
      success: function (data) { 
       $("#response").html(data.d); 
      } 
     }); 
    }); 
});