Bonjour,

Dans un formulaire d'insertion de photos, je donne la possibilité d'ajouter dynamiquement de nouvelles photos. Chaque photo est liée à un input de type checkbox pour indiquer si la photo est ou non la photo principale. Comme il ne peut y avoir qu'une seule photo principale, je désire décocher les cases à cocher autres que celle qu'on vient de cocher.

J'ai donc le Jquery suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
//Unchecking mainPhoto when a checkbox is checked to have only one main photo
//$('input[type="checkbox"]').change(function(event)  
$('body').on( 'change', 'input[type="checkbox"]',function() 
{
 
    if ($(this).is(':checked')) 
    {
 
        $('input[type="checkbox"]').removeAttr('checked');
 
    } 
 
});
Cela fonctionne bien si les photos pré-existaient (si les inputs ont été chargés lors du chargement de la page), mais ça ne fonctionne pas si la photo a été créée dynamiquement (après le chargement de la page). Ni la solution commentée dans le code précédent ni celle non commentée ne fonctionnent.

Quelqu'un aurait une idée sur la manière de procéder?

Merci d'avance pour votre aide.