I need to reload a page in a success of an ajax call.
I’m seeing some code (not mine) and there are two ways:
success: function(obj) { //code location.href = location.href; }
or
success: function(obj) { //code window.location.reload(true); }
Is there any difference in the behaviour? I know the difference of both location
and window.location
but in terms of do the job?
Advertisement
Answer
The main difference is follow:
window.location.reload() reloads the current page with
POST
data, while window.location.href=’your url’ does not include thePOST
data.
Further more, window.location.reload(true)
method reload page from the server. And the browser will skip the cache.
For example, I see you are using success
function from an AJAX
request.
Suppose you have follow method:
[OutputCache(Duration=600)] public ActionResult Homepage(){ //code here return View(); }
If you are using window.location.href="location_URL"
,then browser cache data for 600
seconds, which means 10 minutes.
On the other hand, if you use window.location.reload(true)
, then the browser will skip the cache and ,then, reload page from server.