0

Ajax は Spring Controllerのemployee_editを呼び出しますが、ModelAndView が機能していません。オブジェクトを持つ jsp ページにリダイレクトしません。オブジェクトemployeeを持つページemployee_registration.jspにリダイレクトしたいと思います。コードにエラーはありません。

アヤックス

 $('#example1 tbody').on( 'click', 'button1', function () {
                var eid = table.row( $(this).parents('tr') ).data().eid;
                $.ajax({
                    type:"GET",
                    url:"employee_edit?eid="+eid
                }); 

コントローラ

@RequestMapping(value="/employee_edit", method=RequestMethod.GET)
public ModelAndView RegitrationEdit(@RequestParam("eid") long eid)
{           
  Employee employee=employeeService.getEmployee(eid);
  ModelAndView mv=new ModelAndView(); 
  mv.setViewName("employee/employee_registration");
  mv.addObject("employee",employee);
  return mv;
}

コードを実行した後、エラーは表示されません。コードを実行しますModelAndView("employee/employee_registration","employee",employee);が、何も起こりません。前もって感謝します。

4

2 に答える 2

0

ajax から呼び出した場合、ModelAndView は機能しません。戻り値の型にアノテーションを付けて、employee オブジェクトを json として返す必要があります。@ResponseBody

@RequestMapping(value="/employee_edit", method=RequestMethod.GET)
public @ResponseBody Employee RegitrationEdit(@RequestParam("eid") long eid)
{           
  Employee employee=employeeService.getEmployee(eid);    
  return employee;
}

その後、呼び出しが成功すると、成功のコールバック内で応答が返されます。

$.ajax({
    type:"GET",
    url:"employee_edit?eid="+eid,
    success: function(data) {
        //here data is the employee object
        //process it here and redirect using window.location
    }
}); 
于 2017-12-08T06:57:48.540 に答える