Est-ce possible de déclencher un event sur un sélecteur dont le nom est dynamique (ex : country-1, country-2, ...) ?
oui, en lui mettant une classe et en déclenchant l'event sur la classe
@plus
Pierre
Bonjour,
quand j'essaie de rentrer dans l'événement change() d'une liste déroulante dynamique, il n'exécute pas le code qui se trouve à l'intérieur.
Il n'intercepte pas l'event suivant : $('#country-'+$('#COUN_ID').val()).change(function(event){});
voici mon code javascript :
Voici le code HTML :
Avez-vous une idée à propos du fait que l'événement change() ne se déclenche pas ?
Est-ce possible de déclencher un event sur un sélecteur dont le nom est dynamique (ex : country-1, country-2, ...) ?
Merci d'avance
Bonne journée
Thierry
Est-ce possible de déclencher un event sur un sélecteur dont le nom est dynamique (ex : country-1, country-2, ...) ?
oui, en lui mettant une classe et en déclenchant l'event sur la classe
@plus
Pierre
Bonjour.
Tu devrais plutôt essayer :
Bonjour à tous,
tout d'abord, merci pour vos réponses.
J'ai essayé la solution de Lartak mais, malheureusement, l'événement ne se déclenche toujours pas.
Par contre, je ne vois pas trop ce que Pierrot veut dire avec la classe. Comment tester cela et sur quel event ?
Merci à tous,
Bon dimanche
Thierry
salut,
comme ça :
html
javascript :
j'espere que tu as compris maintenant.
@plus
Pierre
Bonjour Pierre,
merci pour votre réponse rapide à mon message.
J'ai essayé comme vous avez dit mais malheureusement, rien ne se passe.
Voici le code javascript/jQuery :
Voici le code HTML :
Merci à vous.
Bon dimanche,
Thierry
salut
je ne vois pas ce que le .trigger('change') vient faire là :D
et faut pas mettre ** avant le nom de la classe
j'avais mis ça pour les isoler ;)
a++
Bonjour Pierre,
encore merci pour votre réponse rapide.
En fait, je n'ai pas mis ** dans mon code. C'est au niveau du forum grafikart que j'ai demandé de mettre cette chaîne de caractères en gras.
.trigger('change') => permet de dire qu'on va exécuter cet event 'change' dès le début pour qu'il teste la valeur. On exécute comme si on venait de changer la valeur et automatiquement, ça exécutera tout le reste du code. Cela évite de réécrire deux fois la même fonction.
Donc, malheureusement, j'ai fait comme vous avez spécifié dans le message mais, malheureusement, l'événement ne se déclenche pas. Je ne comprends pas pourquoi car tout a l'air bon.
Merci d'avance à vous.
Bonne journée
Thierry
essaye comme ça
Bonjour Pierre,
encore merci pour vos réponses ...
J'ai donc fait comme vous m'avez dit de faire mais je n'ai pas le message d'alerte qui s'affiche.
Code javascript/jQuery :
$('.clspostcode').change(function(){
alert('change appelé !!!');
});
Code HTML :
<div class="form-group postcodes" id="post_codes">
<?php foreach ($postcodesByCountry as $countryId => $postalCodes): ?>
<select name="POST_ID" id="country-<?= $countryId; ?>" class="form-control clspostcode">
<option value="0">Sélectionnez un code postal ...</option>
<?php foreach ($postalCodes as $postalCodeId => $postalCodeName): ?>
<option value="<?= $postalCodeId; ?>"<?= $postcode_id == $postalCodeId ? ' selected' : ''; ?>><?= $postalCodeName; ?></option>
<?php endforeach ?>
</select>
<?php endforeach ?>
</div>
Merci pour votre aide.
Bon dimanche à vous,
Thierry
met le code complet ;)
php html et javascript
a+
mais je n'ai pas le message d'alerte qui s'affiche.
Vérifies que dans la console qu'il n'y ait pas d'erreur qui t'es retourné, car si ça se trouve tu as une erreur qui bloque les évènements qui doivent se faire.
Et si c'est le cas, tu auras beau modifier ce code autant de fois que tu veux, ça ne fonctionnera toujours pas pour autant.
Bonjour à vous,
merci pour vos réponses.
Je n'ai aucun erreur javascript. Je ne vois aucune erreur dans la console.
En fait, quand je sélectionne les pays, il intercepte bien l'événement change pour afficher les codes postaux par pays.
Par contre, quand je sélectionne un code postal, il n'intercepte pas le change sur les codes postaux et n'affiche donc pas les villes par code postal.
La seule différence, c'est que l'id de la liste déroulante des codes postaux est un id dynamique par rapport à celui des pays qui est une chaîne de caractères.
Encore merci pour votre aide.
Bon dimanche à vous,
Thierry
Bonjour Pierre,
voici donc mon code :
Code javascript/jQuery :
Code HTML :
J'espère que vous avez tout le code dont vous avez besoin. Si ce n'est pas le cas, n'hésitez pas à revenir près de moi.
Encore merci pour votre aide.
Bonne journée
Thierry