Bonjour,

Je travail sur un site Wordpress multilingue, et voudrais donc afficher Le datePicker en fonction de la langue.

Mon problème est qu'au click sur la date, quel que soit la langue selectionnée, le date picker s'affiche d'abort en chinois, mais est bien en francais pour les mois suivants (ainsi que pour le mois en cours - qui était en chisois- lorsque je reveins en arrière)

Je peine à trouver quel pourrait être la source de ce disfonctionnement...

Mon code:

  <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/i18n/jquery-ui-i18n.min.js"></script>

  <script>
  $( function() {
    $( "#datepicker" ).datepicker( $.datepicker.regional[ "<?php echo ICL_LANGUAGE_CODE ?>" ] );
  } );
  </script>

<div class="input-block has-datepicker sprite">
                            <label for=""><?php echo __('Check-in','verycreative') ?></label>
                            <input name="dci" class="arrivee-date" id="datepicker" type="text">
</div>

<div class="input-block has-datepicker sprite">
                            <label for=""><?php echo __('Check-out','verycreative') ?></label>
                            <input name="dco" class="depart-date"  id="datepicker" type="text">
</div>

Le premier calendrier ne présente pas de problème, seul le deuxieme est concerné.

Merci d'avance pour vos réponses!

2 réponses


betaWeb
Réponse acceptée

Salut,

Tu as fait une erreur assez grave en dev web : JAMAIS deux éléments HTML ne peuvent avoir le même ID ! C'est le B-A BA !
Tu as deux éléments qui ont l'ID "datepicker", du coup le script JS ne sait plus sur quel pied danser c'est normal..

HTML

<div class="input-block has-datepicker sprite">
  <label for=""><?php echo __('Check-in','verycreative') ?></label>
  <input name="dci" class="arrivee-date" id="datepicker" data-lang="<?= __('Check-out','verycreative') ?>" type="text">
</div>

<div class="input-block has-datepicker sprite">
 <label for=""><?php echo __('Check-out','verycreative') ?></label>
 <input name="dco" class="depart-date"  id="datepicker" data-lang="<?= __('Check-out','verycreative') ?>" type="text">
</div>

JS

$(function() {
  var $dp_a = $("[name='dci']"),
    $dp_d = $("[name='dco']");

  $dp_p.datepicker($dp_p.data('lang'));
  $dp_p.datepicker($dp_p.data('lang'));
});
Naama
Auteur

MERCI MERCI MERCI!!!!!!!!!

je suis encore debutante, mais je reconnais que la c'est gros.....

Vraiment merci encore!

Très bonne fin d'après midi!