Changement de langue avec select option

Résolu
mont_dani Messages postés 249 Statut Membre -  
mont_dani Messages postés 249 Statut Membre -
Bonjour

Dans ma web, j'ai mis ceci pour selectionner et changer la langue.
<select onchange="document.location.href=this.value">
			<option value="/lacansera/es/inicio/page_inicio.php">???????? <b>ES</b></option>
			<option value="/lacansera/fr/inicio/page_inicio.php">???????? <b>FR</b></option>
			<option value="/lacansera/en/inicio/page_inicio.php">???????? <b>EN</b></option>
			<option value="/lacansera/it/inicio/page_inicio.php">???????? <b>IT</b></option>
			</select>


Ma web s'ouvre par défaut en ES, en cliquant sur FR ou EN ou IT le changement de langue se fait parfaiteemnt, mais je ne peux pas revenir a ES.

Pourriez-vous me dire quel est le problème et comment le résoudre?

Par avance merci.

3 réponses

  1. NHenry Messages postés 15235 Date d'inscription   Statut Modérateur Dernière intervention   387
     
    Je suspecte que ce soit dû au fait que le choix par défaut est le premier, donc, revenir à ES est impossible, car pas de changement de valeur.

    Pour essayer de résoudre ce souci, mets :
    selected="1"
    sur la langue courante.
    0
  2. mont_dani Messages postés 249 Statut Membre
     
    Oui je l¡'avais essayer mais sans succès.

    Une autre idée?
    0
    1. NHenry Messages postés 15235 Date d'inscription   Statut Modérateur Dernière intervention   387
       
      Comment tu l'avais essayé ?
      Pour l'utiliser souvent, je sais que ça fonctionne.
      0
  3. mont_dani Messages postés 249 Statut Membre
     
    J'ai réussi en changeant le script

    <form action="" method="post">
    				<select name="choix" id="choix">
                        <option value="1">???????? <b>ES</b></option>
    					<option value="2">???????? <b>FR</b></option>
    					<option value="3">???????? <b>EN</b></option>
    					<option value="4">???????? <b>IT</b></option>
    				</select>
    			</form>


    const select = document.getElementById('choix');
                select.addEventListener('change', function (){
                    var valeur = select.options[select.selectedIndex].value;
                    valeur = parseInt(valeur);
                     
                    switch (valeur) {
                        case 1:
                            changeURL('url es');
                            break;
                        case 2:
                            changeURL('url fr');
                            break;
                        case 3:
                            changeURL('url en');
                            break;
                        case 4:
                            changeURL('url it');
                            break;
    					default:
                            console.log('default');
                    }
     
                });
                 
                function changeURL(url) {
                    window.location.href = url;
                }


    Merci pour ton soutien
    0