I have an Ajax call which will call an action called submit
on form submission in a controller..
In that is something like below:
if (CSConfigurationMgr.IsMobileUrl(Request.UrlReferrer.AbsoluteUri.PathFromURL()))
return RedirectToAction("home", "mobile", new { success = true});
It redirects to homepage and displays a "thank you" message.
I tried just giving url as xxxxxxx/mobile/home?success=true
and it worked as expected.
I am getting true for that condition and going to return statement but i am not being redirected to the new page.
I've checked routes and found no problems there.
I checked by placing the RedirectToAction
in another action, it worked fine, I am redirected to new page. But it is not working here.
Errors:
Cannot redirect after HTTP headers have been sent
: Arises sometimes (mobile browsers)- Nothing happens, just stays on the same page
Moreover, I tried to debug in firebug. After the call is made I get the process:
www.test.com
is nothing but my localhost and its port number
POST http://www.test.com/forms/submit
which is the right path to pass data
GET http://www.test.com/mobile/home?success=true
the path I have to redirect to. It keeps showing the loading sign, doesn't move further from there in firebug.
I suspect that the request is being made but not redirecting.