Partage
  • Partager sur Facebook
  • Partager sur Twitter

cherche une solution sur un select

select qui affiche drapeau et ouvre une page

    11 juillet 2011 à 20:52:10

    Bonjour
    je suis entrain de faire un site en plusieurs langues, j'utilise un select qui a l'aide d'un javascript, m'affiche un drapeau pour chaque langue.
    Je souhaiterais qu'en selectionnant une langue, etre redirige vers le repertoire de la langue choisie, dossier "en" pour l'anglais par exemple.
    J'ai essaye un
    <select onchange="window.location.replace(this.options[this.selectedIndex].value)" class="select" title="Select one" id ="pays">
    

    mais au chargement de ma page, ca me dirige directement vers mon dossier "en".


    <script language="javascript">
    
    $(document).ready(function(){
    	$('#pays').change(function(){
    	var flag_url = 'select/image/'+this.value+'.png';
    	$('#drapeau').attr('src', flag_url);
    	
    	
    	});
    	
    	$('#pays').change();
    	
    	
    });
    




    <select class="select" title="Select one" id ="pays">
    			
                                    <option value="en">English</option>
    				<option value="fr">Fran&ccedil;ais</option>
    				<option value="es">Espa&ntilde;ol</option>            	
    				<option value="de">Deutsch</option>
    				<option value="it">Italiano</option>
    				<option value="pt">Portugu&ecirc;s</option>
    				<option value="ru">РУССКИЙ</option>
    				<option value="jpn">日本語</option>
    				
    				
                </select>
    			
    			<img src="" width="20" height="20"  id="drapeau"/>      </div>
            
           
        </form>
    


    Je bloque, j'ai besoin d'aide, merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      11 juillet 2011 à 21:09:52

      Si au moins tu comprenais les 10 lignes de code utilisées...
      • Partager sur Facebook
      • Partager sur Twitter
        11 juillet 2011 à 21:42:27

        je vois pas ce que tu veux dire. Ma fonction recupere la value, pour afficher le nom de l'image ... Mais bon si c'est ta façon d'aider, merci quand même ...
        • Partager sur Facebook
        • Partager sur Twitter
          11 juillet 2011 à 22:13:33

          La ligne 11 exécute l'événement change(). Il était donc normal que ton premier code entraîne une redirection immédiate.

          Ne pourrais-tu pas affecter un deuxième listener change() après la ligne 11 ? Ainsi, il s'ajouterait au premier, mais ne serait pas déclenché immédiatement.
          • Partager sur Facebook
          • Partager sur Twitter
            12 juillet 2011 à 8:04:18

            Je ne comprends pas trop ce que tu dis
            • Partager sur Facebook
            • Partager sur Twitter
              12 juillet 2011 à 8:11:43

              Bah genre mettre ligne 13 un truc du style :

              $('#pays').change(function() {
                  window.location.href = this.options[this.selectedIndex].value;
              });
              
              • Partager sur Facebook
              • Partager sur Twitter

              cherche une solution sur un select

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown