Mémoire d'onglet

rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009 - 6 oct. 2008 à 13:51
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009 - 29 avril 2009 à 07:59
Bonjour

Sur une page, j'ai 2 onglets.
Pour chacun, j'ai des boutons radios et un bouton de validation.
Lorsque je valide je retourne sur cette même page et mon choix se met à jour.

Mon problème est que j'aimerai que le dernier onglet sélectionné avant de valider soit celui mis en avant une fois la page rechargée.

Voici un lien vers la page de test : [url]http://www.duvrac.com/test_onglets/test_onglets.php/url

J'ai pensé à mettre un bouton radio dans chaque onglet, ça pourrait le faire si il se cochait en cliquant sur l'onglet lui même.
Mais l'idéal serait qu'il n'y ait pas de bouton radio dans les onglets (ou alors qu'il deviennent invisibles)

Bon là c'est un spry généré par Dreamweaver mais si vous avez une solution autre, vous pouvez la soumettre histoire d'avancer le schmilblik ;-)

10 réponses

XtremDuke Messages postés 626 Date d'inscription samedi 28 septembre 2002 Statut Membre Dernière intervention 18 mai 2009 4
6 oct. 2008 à 14:40
Enregistre un cookie au moment de la validation avec l'onglet actuel. Réutilise-le au chargement de la page. C'est aussi "simple" que ca.

<hr size="2" width="100%" />Projet en cours : Joof
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
6 oct. 2008 à 14:57
Salut,

Un petit champ input type=hidden remplit en javascript avant le submit peut faire aussi l'affaire.
Si tu ne veux pas de cookies.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
6 oct. 2008 à 15:02
bonjour,
ou alors.. style="display:none" sur le radio
ou alors.. php sait ( ou peut le savoir ! ) quel est l'onglet ouvert,
             quand il réaffiche la page, qu'il ouvre celui qui l'était.
ou alors...
CordialementBul[mon Site][M'écrire]
0
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009
6 oct. 2008 à 15:05
j'ai mis le cookie en ça marche avec le bouton radio.

Mais l'idée d'un champs hidden rempli en javascript serait bien mieux en effet.
Seulement je sais pas comment faire... pas doué en javascript faut dire le gars aussi ;-)

Comment est ce qu'on fait ça ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009
6 oct. 2008 à 15:26
je pense qu'il faut changer cette ligne :


--->var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1", 1);<---


et remplacer le 1 par la valeur de l'onglet sélectionné. Mais j'y arrive pas...


déjà c'est quoi la valeur ?

defaultTab

this.defaultTab

ou un autre truc ?



le fichier est js est là : http://www.duvrac.com/test_onglets2/SpryAssets/SpryTabbedPanels.js
0
cs_rocknroll2 Messages postés 100 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 22 janvier 2010
29 mars 2009 à 12:00
Bonjour,
As-tu eu une réponse, je suis confronté au même problème et je ne trouve pas de solution, ni en JS ni en PHP

Ouais, je serais un Pro du VB6 et du PHP dans 10/15 ans
;)
0
loufagreen Messages postés 1 Date d'inscription jeudi 29 décembre 2005 Statut Membre Dernière intervention 28 avril 2009
28 avril 2009 à 17:48
Pourrais-tu m'expliciter ce que PHP peut faire pour qu'après valid du formulaire il réaffiche le même onglet, car çà fait plusieurs jours que je galère sur le sujet !
0
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009
29 avril 2009 à 07:49
désolé j'ai pas mal de taf et pas trop le temps de répondre.



rapidement :

il faut déjà mettre ce script sur les onglets (en l'adaptant pour chaque bien sûr) :

onmousedown="document.getElementById('onglet_1').checked = (document.getElementById('onglet_1').checked ? false : true);document.getElementById('onglet_1').checked = (document.getElementById('onglet_1').checked ? true : true);">



placer sur la page autant de boutons radios que d'onglet :
<?php if (!(strcmp($_COOKIE["onglet"],"1"))) {echo "checked="checked"";} ???> type="radio" name="onglet" value="1" id="onglet_1" style="visibility: hidden;" />



Ensuite je sais plus de trop, car j'ai réussi à le fire fonctionner mais depuis j'ai remodifié et je suis passé à une autre page. Je commence à dévelloper en flash et je pense que je vais en faire de même pour ma fameuse page (donc ne plus utiliser les spry)


mais c'est possible :-) si vous retrouvé le code n'hésitez pas à le remettre sur ce post pour qu'il nous serve de pense bête ;-)
0
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009
29 avril 2009 à 07:55
loufagreen, dans mon cas, le spry est placé dans un formulaire qui enregistre les vaeurs des boutons radio cachés et recharge la page. De ce fait il suffit de modifier cette ligne de code pour l'adapter à l'ouverture de l'onglet sélectionné en dernier :

var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1", {defaultTab:2});


il faut un code du genre :

var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1", {defaultTab:<?php echo $row_RSradio["onglet"]-1; ???>});
0
rduvrac Messages postés 120 Date d'inscription vendredi 7 février 2003 Statut Membre Dernière intervention 2 novembre 2009
29 avril 2009 à 07:59
mince je me rend compte que les codes sont mal passés...


donc j'espère que ceux là vont passés ... :

< input < ? php if (!(strcmp($_COOKIE["onglet"],"1"))) {echo "checked="checked"";} ? > type="radio" name="onglet" value="1" id="onglet_1" style="visibility: hidden;" />

puis :

var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1", {defaultTab:< ? php echo $_RSradio["onglet"]-1; ? >});
0
Rejoignez-nous