2015-06-13 31 views
2

这里是我的代码如何在成功完成ajax请求后将请求重定向到另一个控制器?

$("#ajaxform").submit(function(e){ 
      var info = $(this).serialize(); 
      $.ajax(
      { 
       url : "ctrl1", 
       type: "post", 
       data : info, 
       success:function(data, textStatus, jqXHR) 
       { 
        $('.valid-error').html(data); 
        if(data == "success"){ 
          $.get("ctrl2", info); // this get request do not come to the servlet 
        } 
       } 
      }); 
      e.preventDefault() 
     }); 
$(".submit").click(function(){ 
     $("#ajaxform").submit(); 
}); 

如何请求重定向到成功的AJAX请求和数据==“成功”后,另一个控制器?我在我的servlet的doGet()中有断点,它没有被调用。这里的代码不起作用,我测试了它。如何使这个获取请求有效?

回答

2
$("#ajaxform").submit(function(e){ 
      var info = $(this).serialize(); 
      $.ajax(
      { 
       url : "ctrl1", 
       type: "GET", 
       async: false, 
       data : info, 
       success:function(data, textStatus, jqXHR) 
       { 
        $('.valid-error').html(data); 
        if(data == "success"){ 

          window.location.href = "/Controllername/Viewname"; 
        } 
       } 
      }); 
      e.preventDefault() 
     }); 
$(".submit").click(function(){ 
     $("#ajaxform").submit(); 
}); 

这里可以指定你的控制器名称和视图名称

+0

它不会让一个GET请求和我的servlet get方法将不会被调用。我尝试过这个。 – oronaparcali

+0

@oronaparcali任何默认的请求都是对控制器的方法的GET请求,为什么认为它没有得到调用? – Devesh

+0

,因为我在servlet doGet()方法中有断点,并且它不在那里。 – oronaparcali