2017-11-09 3 views
0

데이터베이스에서 컨트롤러로 데이터 목록을 가져 왔습니다.이 데이터를 JSP로 보낼 수 없으며 반환 문자열 만 표시합니다. 여기 컨트롤러에서 jsp로 데이터 목록을 보낼 수 없습니다

이 내 컨트롤러 내보기 부분

$(document).ready(function() { 
$('#searchleader').submit(
    function(event) { 
     var all={village:$('#village').val(),taluka:$('#taluka').val(),district:$('#district').val(),state:$('#stateDrop').val()}; 
     var data = all; 
     $.ajax({ 
      url : $("#searchleader").attr("action"), 
      data : data, 
      type : "GET", 

      success : function(response) { 
       alert(response); 
      }, 
      error : function(xhr, status, error) { 
       alert(xhr.responseText); 
      } 
     }); 
     return false; 
    }); 
}); 
<form action="searchresult" id="searchleader" method="POST"> 
       <div class="row"> 
        <div class="form-group col-lg-3"> 
         <select id="stateDrop" 
          title="State &lt;i class=&quot;fa fa-angle-down&quot;&gt;&lt;/i&gt;"> 
          <option value="small">State</option> 
          <c:forEach items="${stateList}" var="state"> 
           <option value="${state.state_Id}">${state.state_Name}</option> 
          </c:forEach> 
         </select> 
        </div> 
        <div class="form-group col-lg-3"> 
         <select id="district"> 
          <option value="small">District</option> 
         </select> 
        </div> 
        <div class="form-group col-lg-2"> 
         <select id="taluka"> 
          <option value="small">Taluka</option> 
         </select> 
        </div> 
        <div class="form-group col-lg-2"> 
         <select id="village" 
          title="Villages &lt;i class=&quot;fa fa-angle-down&quot;&gt;&lt;/i&gt;"> 
          <option value="small">Villages</option> 
         </select> 
        </div> 
        <div class="form-group col-lg-2"> 
         <input type="submit" value="Search" class="submit"> 
        </div> 
       </div> 
      </form> 

입니다

@RequestMapping(value="/searchresult",method=RequestMethod.GET) 
public @ResponseBody String searchLeaderList(
     @RequestParam (value="state",required=false) Integer state_id, 
     @RequestParam (value="district",required=false) Integer ds_id, 
     @RequestParam (value="taluka",required=false) Integer t_id, 
     @RequestParam(value="village",required=false)Integer v_id,ModelMap model){ 
    List<LeaderName> leadernames=leaderNameService.findLeaders(state_id, ds_id, t_id, v_id); 
    model.addAttribute("lname",leadernames); 
    return "home/list-of-polititian"; 
} 

가져온 모든 데이터가 데이터의 목록과 함께 다른 JSP 페이지를 보낼 필요가 있지만 않을거야 이후 문제는 그 페이지로 "홈/정치인 목록"만 보여주는 성공 응답을 얻은 후 나는 이것이 왜 다른 페이지로 갈 수 없는지를 이해하고있다.이 점에 대해 제발 도와주세요.

답변

1

컨트롤러 방법에서 @ResponseBody을 제거하십시오. @ResponseBody 응답을 사용하면보기로 리디렉션되지 않고 json 값으로 응답합니다.

@RequestMapping(value="/searchresult",method=RequestMethod.GET) 
public String searchLeaderList(
     @RequestParam (value="state",required=false) Integer state_id, 
     @RequestParam (value="district",required=false) Integer ds_id, 
     @RequestParam (value="taluka",required=false) Integer t_id, 
     @RequestParam(value="village",required=false)Integer v_id,ModelMap model){ 
    List<LeaderName> leadernames=leaderNameService.findLeaders(state_id, ds_id, t_id, v_id); 
    model.addAttribute("lname",leadernames); 
    return "home/list-of-polititian"; 
} 
+0

감사합니다. @mhshimul –