Hi, I am trying to do a simple POST request using jQuery AJAX, but cant figure out whats wrong.
Here is the jQuery Function
var url="{{ URL::action('LoginController@validateLogin') }}"
$.post(url,{email:email, password:password},function(){
alert('Sucess');
}).fail(function(){
alert('Fail');
});
Here is the controller
class LoginController extends BaseController
{
public function validateLogin()
{
return Redirect::to('about');
}
}
and Here is the route
Route::post('Login','LoginController@validateLogin');
The function is called, when a button is clicked. I get the "Sucess" Alert but the page doesnot get redirected, also if in the controller file, I change the "about" to a page that does not exist, I get the "Fail" message...It means that the request do gets posted and it is a sucess, but I donnot get re-directed.
Help would be appreciated. Thanks.
Your problem is that Redirect::to issues an HTTP redirect, and AJAX requests don't work that way; effectively, the request sent by javascript is getting redirected, not the page the user is on. You'll want to send back the destination page URL and redirect by javascript instead.
rizqidjamaluddin said:
Your problem is that Redirect::to issues an HTTP redirect, and AJAX requests don't work that way; effectively, the request sent by javascript is getting redirected, not the page the user is on. You'll want to send back the destination page URL and redirect by javascript instead.
Thanks...got it fixed..
Sign in to participate in this thread!
The Laravel portal for problem solving, knowledge sharing and community building.
The community