Bonjour,
Dans un formulaire d'encodage de prix, de nouveaux prix peuvent être ajoutés à la demande via un bouton :
Dans mon template :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 <ul class= "prices" data-prototype= " {{ form_widget ( formPricesAdvert.prices.vars.prototype )| e ( 'html_attr' ) }} " > {% for season in unique_seasons %} {% set i = 0 %} <h4>Saison {{ season.season }}</h4> <div id= "divSeason_{{ idsSeasons[i] }}"> {% for price in formPricesAdvert.prices %} {% if idsSeasons[i] == season.id %} <li> {{ form_label(price.price, 'Prix', {'label_attr': {'class': 'foo'}}) }} {{ form_errors(price.price) }} {{ form_widget(price.price) }} {{ form_label(price.duration, 'Durée', {'label_attr': {'class': 'foo'}}) }} {{ form_errors(price.duration) }} {{ form_widget(price.duration) }} {{ form_label(price.season, 'Saison', {'label_attr': {'class': 'foo'}}) }} {{ form_errors(price.season) }} {{ form_widget(price.season) }} <button type="button" class="btn-remove"> Supprimer cette durée </button> </li> {% endif %} {% set i = i + 1 %} {% endfor %} <button type="button" class="btn-add"> Ajouter durée </button> </div> {% endfor %} </ul>
Dans mon fichier js :
Tout se passe correctement pour la création. Cependant, lors de celle-ci, je voudrais attribuer une valeur à mon select {{ form_widget(price.season) }}. Et là, malgré mes nombreuses recherches, je sèche car je ne parviens pas à accéder aux différents éléments (dont ce select) qui viennent d'être créés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $('.btn-add') . on ( 'click' , function ( e ) { Je crée les différents éléments repris dans le data-prototype de mon template });
Quelqu'un aurait une piste?
Merci d'avance pour votre aide.
Partager