Afficher un bloc plusieurs fois selon un nombre choisi

uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention   -  
zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   -
Salut

qui peux m'aider svp je veux afficher un bloc plusieur foix selon le nembre choisie dans une

select comment le faire ?

j'explique dans mon formulaire le client va saisir ces collaborateur : fonction ,nom prenom ..

il a la possibilitè de saisir maximum 5 collabborateur alors selon le nombre de collaborateur

choisie par la <select> le formulaire va affiche n foix le meme formulaire sur la mème page

le bloc qui va se reppéter cè le bloc <div id="teamclinique" >


voila mon code

<div id="detail_equipe" >

<div id="teamclinique" >

<label for="Coordinatefonction">Fonction du collaborateur :</label><input name="fonction" type="text" id="fonction" />

<label for="Coordinateadr">Nom :</label><input name="adr" maxlength="255" type="text" id="adr"/>

<label for="Coordinateville">Prenom :</label><input name="ville" maxlength="255" type="text" id="City" />

<label for="Coordinatephoto">Photo :</label><input name="photo_collaborateur" maxlength="255" type="file" />

</div>


<br> Ajouter : <select name="nb_coll" id="nb_coll" style="width:40px;"/> <option>1</option><option>2</option><option>3</option> <option>4</option><option>5</option></select> collaborateur(s)</div> </br>

</div>
</div>
A voir également:

3 réponses

zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   16
 
tu peux faire ça en javascript :

<script>
function ajouter(sel)
{
var nbre = parseInt(sel.value);
var monDiv = '';
for(var i=1;i<=nbre;i++)
{
monDiv += '<div id="detail_equipe'+i+'" >'

+ '<div id="teamclinique'+i+'" >' 

+ '<label for="Coordinatefonction">Fonction du collaborateur :</label><input name="fonction'+i+'" type="text" id="fonction'+i+'" />' 

+ '<label for="Coordinateadr">Nom :</label><input name="adr'+i+'" maxlength="255" type="text" id="adr'+i+'"/>' 

+ '<label for="Coordinateville">Prenom :</label><input name="ville'+i+'" maxlength="255" type="text" id="City'+i+'" />' 

+ '<label for="Coordinatephoto">Photo :</label><input name="photo_collaborateur'+i+'" maxlength="255" type="file" />' 

+ '</div>'; 
}
document.getElementById("ajout").innerHTML = monDiv;
}
</script>

<div id="detail_equipe" > 

<div id="teamclinique" > 

<label for="Coordinatefonction">Fonction du collaborateur :</label><input name="fonction" type="text" id="fonction" /> 

<label for="Coordinateadr">Nom :</label><input name="adr" maxlength="255" type="text" id="adr"/> 

<label for="Coordinateville">Prenom :</label><input name="ville" maxlength="255" type="text" id="City" /> 

<label for="Coordinatephoto">Photo :</label><input name="photo_collaborateur" maxlength="255" type="file" /> 

</div> 


<br> Ajouter : <select name="nb_coll" id="nb_coll" style="width:40px;" onChange="ajouter(this)"> <option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option> <option value="4">4</option><option value="5">5</option></select> collaborateur(s)</div> </br> 
<div id="ajout"></div>
</div> 
</div>
1
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
mer6 bcp pour t'as réponse mais ça marche pas :/
0
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai une proposition mais je sais pas si ca marche ou pas !!
est que je peux faire 5 bloc par defaux de type display=none et quand on selecte le nombre des collaborateurs qu'on veut saisir
par exemple quand il choisie 3 => 3 bloc se transforme on display=block
0
Utilisateur anonyme
 
J'ai testé son code et il fonctionne, faut voir pourquoi il ne fonctionne pas de ton côté.
http://dev.framecodes.com/shares/eaHyXP/
0
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
ahh oui t'as raison j'ai une div non fermer :) mer6 bcp ca marchè marfaitement :)
0
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
une autre chose stp je trouve un probléme avec ce bloc qui ce repète plusieur foix comment faire pour récupérer ces valeur
0
zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   16
 
Pour récupérer les fonctions des collaborateurs tu peux faire:

<?php
$fonctions = array(); // tableau contenant tout les fonctions
if(isset($_POST['fonction']))
$fonctions[0] = $_POST['fonction'];
for($i=1;$i<=5;$i++)
{
if(isset($_POST['fonction'.$i]))
$fonctions[$i] = $_POST['fonction'.$i];
}
?>
0
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
ca pas marchè :/
0
uno_orami Messages postés 49 Date d'inscription   Statut Membre Dernière intervention  
 
derniere chose stp j'ai ajouter un script jquery pour linput type file pour modifier le style de bouton browser c a dire


au lieu de

<label for="Coordinatephoto">Photo :</label><input name="photo_collaborateur" maxlength="255" type="file" />

j'ai mis ca

<div class="cooinput"><label for="CoordinateEmail">Photo :</label><div id="posfile" style="width: 555px;margin-left: 268px;"><input type="file" class="jfilestyle" data-buttonText="Télécharger" data-theme="orange" data-size="250px" data-input="true" data-icon= "true" data-iconName=" icon-arrow-down" name="photo_collaborateur0" id="photo_collaborateur"/>
<script src="jquery-filestyle/js/jquery-filestyle.min.js"></script></div>
</div>

jusqu'a maintenant tous va bien mais pour le bloc qui serepete ca marche pas j'ai essai de modifier ca

+ '<div class="cooinput"><label for="CoordinateEmail">Photo :</label><div id="posfile" style="width: 555px;margin-left: 268px;"><input type="file" class="jfilestyle" data-buttonText="Télécharger" data-theme="orange" data-size="250px" data-input="true" data-icon= "true" data-iconName=" icon-arrow-down" name="photo_collaborateur0" id="photo_collaborateur"/>
<script src="jquery-filestyle/js/jquery-filestyle.min.js"></script></div>
</div>'+
mais ca marche pas :/
0
zermat Messages postés 160 Date d'inscription   Statut Membre Dernière intervention   16
 
Il ne faut pas mettre <script src="jquery-filestyle/js/jquery-filestyle.min.js"></script> à l'interieur du div qui se repete mettez le plutôt avant la fermeture de la balise </head>
Aussi il ne faut pas que le id photo_collaborateur se répète plusieurs fois si vous avez plusieurs input avec le même id mettez :
+ '<div class="cooinput"><label for="CoordinateEmail">Photo :</label><div id="posfile" style="width: 555px;margin-left: 268px;"><input type="file" class="jfilestyle" data-buttonText="Télécharger" data-theme="orange" data-size="250px" data-input="true" data-icon= "true" data-iconName=" icon-arrow-down" name="photo_collaborateur0" id="photo_collaborateur'+i+'"/></div></div>'
0