window.location.reload ne fonctionne pas pour Firefox et Chrome
Je veux changer le statut de l'utilisateur sur le clic d'un Bouton, donc tout ce que je fais est, la détection de l'état actuel et de l'évolution, si nécessaire.
Mais dans ce cas, les changements de l'état dans le backend, mais pour montrer le statut de la page a besoin d'être rafraîchi, comme lors de l'actualisation, il vérifie l'état actuel et des spectacles. Je suis donc à l'aide de la fenêtre".emplacement.rechargement de la propriété" pour afficher le dernier statut sur la page
Toutes les choses fonctionnent très bien sous IE. Mais dans le cas de Firefox et de Chrome, L'état n'est pas en train de changer. Je pense que la fenêtre".emplacement.recharger" n'est pas de travail, parce que quand je viens de commenter cette ligne et essayez de cliquer sur le bouton et actualiser manuellement la page, il montre les changements de Statut.
Pouvez-vous s'il vous plaît suggérer que dois-je utiliser pour faire ce travail dans Firefox et google Chrome?
Quand j'ai cherché sur google, j'ai trouvé quelque part il fonctionne dans Firefox et google Chrome si vous le donner dans le "setTimeout()". Je l'ai essayé, mais même alors, sa ne fonctionne pas pour moi.
<script>
$(document.body).on('click', '#activate', function () {
var pkgVersion = $(this).attr('data-version');
alert("@Url.Action("SetActivePackage", "Deployment")", { version: pkgVersion });
$.get("@Url.Action("SetActivePackage", "Deployment")", { version: pkgVersion }).done(function () {
});
setTimeout(function () { window.location.reload(data); }, 0);
});
</script>
S'il vous plaît suggérer!
source d'informationauteur UID
Vous devez vous connecter pour publier un commentaire.
J'ai deux autres options pour vous:
Et:
Je ne suis pas testé sur Firefox et Chrome, mais il peut vous aider plus rapidement. Demain je vais faire les tests et la mise à jour de la réponse si ce n'est pas le travail.
J'ai eu ce problème dans AngularJS et dans Firefox. (Rechargement étais bien dans Chrome).
En utilisant setTimeout le problème est résolu.
Avez-vous essayé ceci?:
Apparemment, vous pouvez déposer la "fenêtre"., mais je n'ai pas essayé moi-même.
J'ai eu le même problème sur Chrome et Firefox. J'ai pu régler le problème en ayant le serveur répond avec l'url de la page. Pour votre cas, vous pouvez avoir la réponse sera la nouvelle valeur de l'état de l'utilisateur. En voici deux exemples:
..et la réponse du serveur
Ce qui a éliminé l'incompatibilité dans le Chrome et le rechargement de la page sans échec.
Look de ce
Vous pouvez forcer le rechargement pour obtenir la page à partir du serveur par le réglage de la forceGet paramètre à true:
Ici ce travail est à moi avec Fire Fox ainsi que Crome et sa fonctionne très bien avec IE.
Note clé de mon point de vue est que l'emplacement de la fonction pour moi devait être au-dessus de l'emplacement dans lequel l'appel a été effectué. La pensée que le navigateur interprète le javascript du haut vers le bas, si mon code pour recharger était au-dessous de l'objet qui l'invoque, il échoue. Si je mets le code ci-dessus, la fenêtre.emplacement.href = fenêtre.emplacement.href; travaillé.