Bonsoir j'aimerais savoir comment on pourrait faire pour modifer une URL aprés le click dans un href ceux sans recharger la page en féte voila j'ai fait un system d'onglet jaimerais que à chaque fois que je chage d'angler j'insert dans mon url le paramettre qui es rien dautre que ma condition de recherche

<ul id="tabs">
ici c'est mes onglet yen a trois
<li><a href="#" title="Internationaux">Internationaux</a></li>
            <li><a href="#" title="Francophones">Francophones</a></li>
            <li><a href="#" title="Régionaux"> Régionaux</a></li>   
        </ul>
        ici c'est lespace des onglets ou j'affiche mes informations 
          <div id="cont">
              <div id="Internationaux" class="list" >  
                    <ul>
                      <?php  foreach($page as $page) { ?>  
                          <li>
                            <img src= <?php echo '"/MonSite/images'.DS.$page->type.DS.$page->annee.DS.'affiches'.DS.$page->affiche.'"';?> /> </img>
                                      <h2><a href=<?php echo '"'.DS.'MonSite'.DS.'page'.DS.'view'.DS.$page->id.'" ';?>><?php echo $page->titre;?></a></h2>
                                      <h3><?php echo $page->theme;?></h3>
                          </li>
                      <?php } ?>
                    </ul>                                              
                </div>     

j'ai essayer de mette une URL dans le li mai rien ne marche

http://localhost/MonSite/page/archives/ je souhaiterais pouvoir avoir sa quand je click sur un onglet
http://localhost/anap/page/archives/regionale ou regional c'est mon paramettre

9 réponses


Vallyan
Réponse acceptée

Cela ce fait en javascript:
Si ton code HTML pour tes onglets ressemble a ceci (note l'ajout d'une classe "onglet"

<li><a href="#" title="Internationaux" class="onglet">Internationaux</a></li>
<li><a href="#" title="Francophones" class="onglet">Francophones</a></li>
<li><a href="#" title="Régionaux" class="onglet"> Régionaux</a></li>  

Alors dans ta fonction jQuery tu peux mettre:

$(".onglet").click(function(e){
     window.location.hash = $(this).attr('title');
});

Je ne sais pas si je suis le seule mais je ne comprend pas tres bien ta question.
Tu parles d'onglets. Si tu veux utiliser les tabs de Jquery par exemple je te laisse regarder.
Si tu veux cliquer sur un lien sans que la page se recharge totalement, tu veux vouloir parler d'Ajax.

Essaye de m'éclairer et j'essayerais d'être plus clair.

le system d'onglet sur la page chaque onglet recuper une certaine information selon leparametre passé en url c'est tous j'arrive pas a faire passé les parametre dans l'url j'ai essayer avec le href mais rien

Dans ton exemple les href sont vides !!!!

je sais quand je les remplis rien ne se passe méme pqs l'url qui change

waw vive le Jquery sa aide vrament bcp merci infiniment

mais sa submit pas sa change juste le nom

Tu voulais changer l'url sans recharger la page, c'est ce que fait le script que je t'indique en utilisant les hash, qui sont conventionnellement uilisés pour ce genre de truc.

Si tu veux en plus charger du contenu, il faut coupler cela avec un appel ajax, a ajouter dans la fonction suite a la modification de l'url.

Si tu veux aller encore plus loin et faire un site tout ajax dans le genre de celui d'Alex-D, c'est plus compliqué par contre ...

D'ailleurs pour changer l'url plus en profondeur tu peux faire appel a

window.history.pushState();

en javascript. Pour tester, tape une connerie du genre

window.history.pushState("", "", "/NouvelleUrl");

dans ta console.