6
votes

Ajax Interfaces utilisateur mis à jour et le bouton arrière

scénario:

  • Une page est chargée avec une interface utilisateur complexe sur elle.
  • L'utilisateur fait certaines actions qui modifient les données via Ajax Callbacks, les modifications sont reflétées sur l'interface utilisateur par DOM Manipulation (par exemple via jQuery).
  • Utilisateur clique sur un lien pour accéder à une autre page (dites une page de détails).
  • utilisateur clique sur le bouton arrière pour revenir à la page UI d'origine.
  • L'utilisateur voit des informations obsolètes - Cela ressemble aux modifications qu'il a fabriquées (à l'étape 2) ne s'est jamais produite.

    Comment gérez-vous cette situation?


0 commentaires

4 Réponses :


2
votes

biscuits. Le seul moyen de sauvegarder des informations après que l'utilisateur quitte une page et revient avec des cookies.

meilleure façon de le faire est xxx


8 commentaires

Pas le seul moyen. Et si l'utilisateur a des cookies éteint?


Ensuite, ils ne pourront pas sauver l'état entre les vues de page. Si vous avez un meilleur moyen d'économiser de l'état sur le site Web sans cookies, faites le moi savoir.


Database ou Filfile sur le serveur


Et puis comment allez-vous dire à vos utilisateurs?


@ user350162 Je pense que son point est que les cookies ne sont pas le seul moyen de le faire


Non, le point n'est pas là autre moyen de le faire. Son poste n'a eu aucun sens car il a échoué une partie importante de ce problème, identifiant vos utilisateurs. Aucun de vous n'a montré qu'un moyen de sauvegarder l'état sur le Web sans cookies. Juste parce que vous continuez à dire que cela ne le rend pas vrai. Encore une fois, si vous avez une preuve qu'il est possible de le faire (de manière largement applicable); J'aimerais vraiment le voir. sérieusement.


ASP.NET prend en charge les sessions de Cookieless ( msdn.microsoft.com/en-us/library /AA479314.aspx ), qui peut probablement être implémenté sur d'autres plates-formes.


oui qui peuvent facilement être implémentés sur d'autres plates-formes. C'est une idée intéressante, même si c'est une sorte de restrictive.



1
votes

Peu importe les données transmises à la page suivante devraient également être transmises pour changer l'interface utilisateur à la manière dont elle doit être.

Cela pourrait être fait avec des cookies ou cela pourrait être fait à l'aide de la logique latérale post-données / serveur. Il suffit de transmettre les valeurs à la deuxième page et lorsque l'utilisateur veut reviendrer, assurez-vous de les transmettre également et de modifier l'interface en fonction des valeurs. Vous pouvez même utiliser une session pour cela, c'est que vous vouliez, mais je pense que cela peut être surchargé si c'est le seul endroit dont vous aurez besoin.

métropole


0 commentaires

2
votes

Vous pouvez forcer la page à rafraîchir lorsque vous appuyez sur la touche Retour, ce qui extraire les données mises à jour du serveur.

<META http-equiv="Cache-Control" content="no-cache">
<META http-equiv="Pragma" content="no-cache">
<META http-equiv="Expires" content="-1">


0 commentaires

0
votes

Les cookies ne sont pas le seul moyen. Pensez au plugin JQuery BBQ. Voir http : //mattfrear.com/2010/03/20/Enabling-browser-back-button-on-cascade-Dropdowns-with-jquery-bbq-plugin/

Fondamentalement, il utilise #variables ajoutés à la chaîne de requête pour tromper le navigateur en pensant que c'est une nouvelle page, donc si vous vous rafraîchissez ou revenez à la page, la variable de la version repeuplera les commandes.


0 commentaires