J'ai besoin de recharger une page en cas de succès d'un appel ajax.
Je vois du code (pas le mien) et il y a deux façons:
success : function(obj) {
//code
location.href = location.href;
}
ou
success : function(obj) {
//code
window.location.reload(true);
}
Y a-t-il une différence de comportement? Je connais la différence d'emplacement et de window.location mais en termes de faire le travail?
La principale différence est la suivante:
window.location.reload () recharge la page en cours avec les données
POST
, tandis que window.location.href = 'votre url' n'inclut pas les donnéesPOST
.
De plus, la méthode window.location.reload(true)
recharge la page à partir du serveur. Et le navigateur sautera le cache.
Par exemple, je vois que vous utilisez la fonction success
à partir d'une requête AJAX
.
Supposons que vous ayez suivi la méthode:
[OutputCache(Duration=600)]
public ActionResult Homepage(){
//code here
return View();
}
Si vous utilisez window.location.href="location_URL"
, Les données du cache du navigateur pendant 600
Secondes, ce qui signifie 10 minutes.
D'un autre côté, si vous utilisez window.location.reload(true)
, le navigateur sautera le cache et, ensuite, rechargera la page du serveur.