Ahh désolé, j'avais oublié ce post. J'ai réussi en faite. Pour ca j'ai utilisé la méthode décrite ici : http://tech.cibul.net/fr/formulaires...1-4-et-jquery/
Ca marche bien. Du coup à chaque fois que je clique sur le bouton ajout d'un ligne, on execute la méthode Add :
Qui affiche ensuite mon template Add, où j'ai juste le template de ma ligne ajouté :
Code : 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 public function executeAdd(sfWebRequest $request) { $this->forward404unless($request->isXmlHttpRequest()); $number = intval($request->getParameter("num")); $formequipement = new equipementForm(); $subForm = new sfForm(); for ($i=0;$i < $number+1;$i++) { $embedForm = new equipementForm(); $subForm->embedForm($i, $embedForm); } $formequipement->embedForm('embedequipement',$subForm); $this->form = $formequipement; return $this->renderPartial('addNew',array('form' => $this->form, 'number' => $number)); }
J'ai également pu faire un bouton suppression de ligne selectionné par une checkbox. Tout marche, c'est cool.
Code : 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 <?php echo "<tr class='embed_ligne_equipement' id='embed_ligne_equipement".$number."'>" ?> <?php echo "<td><input type='checkbox' class='checkbox_eqp' id='checkbox_eqp_".$number."'</td>" ?> <td> <?php echo $form['embedequipement'][$number]['eqp_libelle']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_libelle']?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_abrege']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_abrege'] ?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_num_serie']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_num_serie']?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_adr_mac']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_adr_mac']?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_version']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_version']?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_licence']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_licence']?> </td> <td> <?php echo $form['embedequipement'][$number]['teqp_id']->renderError() ?> <?php echo $form['embedequipement'][$number]['teqp_id'] ?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_date_livr']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_date_livr'] ?> </td> <td> <?php echo $form['embedequipement'][$number]['eqp_date_fin_garantie']->renderError() ?> <?php echo $form['embedequipement'][$number]['eqp_date_fin_garantie'] ?> </td> <td><?php echo $form['embedequipement'][$number]['org_id']?></td> </tr>
Merci
Partager