2009-06-02 5 views
1

J'ai une page avec plusieurs grilles. Pour la facilité d'utilisation, j'ai mis ces gridviews dans une série d'onglets jquery. Les onglets fonctionne en créant des liens d'ancrage qui vont à conteneurs avec certains ids, donc après avoir cliqué sur un onglet donné, l'URL peut changer deModification de l'URL de publication à l'aide d'une ancre de page

host.com/page.aspx

à

host.com /page.aspx#tab2

Le problème est que si des éléments dans les onglets provoquent une publication, comme essayer de trier ou de faire un appel de la grille, par exemple, lors du chargement, l'onglet sélectionné est perdu et revient au premier onglet dans la liste. Donc, dans ce cas, j'aurais trié la bonne grille, mais je devrais cliquer à nouveau sur l'onglet correct pour le voir.

Pour résoudre ce problème, je veux savoir à quelle ancre je suis au moment de la publication, afin de pouvoir modifier l'URL que je charge pour l'inclure. La seule façon dont je peux penser à le faire est une redirection, dont je ne veux vraiment pas engager le coût.

Existe-t-il un meilleur moyen de spécifier l'ancre à charger lors de la publication?

Répondre

1

Sur les formes événement onsubmit, modifier l'attribut d'action pour inclure l'ancre pertinente (que vous aurez besoin de garder une trace de vous-même)

+0

Solution parfaite, bonne réflexion. –

0

Si la page est l'affichage à lui-même alors au lieu de faire revenir le poste à foo.aspx vous devez le rendre à foo.aspx#anchor.

Vous pouvez également le faire via des cookies si vous devez mais les ancrages sont beaucoup mieux. Les cookies sont plus utiles pour des choses comme la personnalisation de la page Yahoo pour se concentrer sur un onglet particulier à chaque visite.