Bonsoir,
Après plusieurs soirées à me retourner la tête je m'en remet à vos lumières.
Je vais essayer d'être claire dans mes explications afin d'avoir une solution à mon problème.
Dans un formulaire de saisie de renseignement d'une société je peux être amené à avoir plusieurs adresse pour une même société. Jusqu'ici pas trop de problème, je sais faire.
Mon problème vient du fait que ces adresses peuvent être rattachées à un ou plusieurs type de produit, pour cela j'utilise la bibliothèque "Choosen" avec l'attribut "multiple"
Etant donné que je peux avoir plusieurs adresse ma variable prend la forme de "ma_variable[ i_ligne ][]".
Problème je n'arrive pas à récupérer en JS le nombre d'élément contenu dans mon tableau "ma_variable[ i_ligne]" et les éléments.
Si je fais cela pour tenter de connaître le nombre d'élément
J'obtiens un "undefined".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var test = document.forms[ 'form_add_modif_societe' ].elements[ "id_admin_type_produit['1'][]" ].lenght; alert( test );
Ci-joint mon code PHP de l'élément du formulaire
Si quelqu'un pourrai m'aider ce serait Tip top ^^
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
41
42
43
44
45
46
47
48
49
50
51 <div class="form-group row"> <!-- RATTACHEMENT ADRESSE A UN TYPE DE PRODUIT --> <label for="sigle_admin_societe" class="col-sm-4 col-md-3 col-form-label col-form-label-sm">Rattaché au type de produit:</label> <div class="col-sm-9"> <select name="id_admin_type_produit[ '1' ][]" data-placeholder="Choix du type de produit rattaché à l'adresse" class="chosen-select" multiple tabindex="6"> <?php $flag_nf_ce_precedent = ""; for( $i_liste_type_produit = 0; $i_liste_type_produit < count( $tmp_tab_liste_type_produit[ 'id_admin_type_produit' ] ); $i_liste_type_produit++ ) { $tmp_liste_id_admin_type_produit = $tmp_tab_liste_type_produit[ 'id_admin_type_produit' ][ $i_liste_type_produit ]; $tmp_liste_libelle_admin_type_produit = $tmp_tab_liste_type_produit[ 'libelle_admin_type_produit' ][ $i_liste_type_produit ]; $tmp_liste_flag_nf_ce_admin_type_produit = $tmp_tab_liste_type_produit[ 'flag_nf_ce_admin_type_produit' ][ $i_liste_type_produit ]; if( $tmp_liste_flag_nf_ce_admin_type_produit == "0" ) { $tmp_liste_libelle_nf_ce_admin_type_produit = "NF"; } if( $tmp_liste_flag_nf_ce_admin_type_produit == "1" ) { $tmp_liste_libelle_nf_ce_admin_type_produit = "CE"; } if( $flag_nf_ce_precedent != $tmp_liste_flag_nf_ce_admin_type_produit && $i_liste_type_produit == 0 ) { ?> <optgroup label="<?php echo $tmp_liste_libelle_nf_ce_admin_type_produit; ?>"> <?php } if( $flag_nf_ce_precedent != $tmp_liste_flag_nf_ce_admin_type_produit && $i_liste_type_produit != 0 ) { ?> </optgroup> <optgroup label="<?php echo $tmp_liste_libelle_nf_ce_admin_type_produit; ?>"> <?php } ?> <option value="1_<?php echo $tmp_liste_id_admin_type_produit; ?>"> <?php echo $tmp_liste_libelle_admin_type_produit; ?> - <?php echo $tmp_liste_libelle_nf_ce_admin_type_produit; ?> </option> <?php $flag_nf_ce_precedent = $tmp_liste_flag_nf_ce_admin_type_produit; } ?> </optgroup> </select> </div> </div>
Merci
Partager