Bonjour,
J'ai trouvé ce script la pour créer et supprimer des champs dynamiquement dans mon form, ca marche nickel
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 <script type="text/javascript"> <!-- Begin /* Created by: Husay :: <a href="http://www.communitxt.net" target="_blank">http://www.communitxt.net</a> */ var arrInput = new Array(0); var arrInputValue = new Array(0); function addInput() { arrInput.push(arrInput.length); arrInputValue.push(""); display(); } function display() { document.getElementById('parah').innerHTML=""; for (intI=0;intI<arrInput.length;intI++) { document.getElementById('parah').innerHTML+=createInput(arrInput[intI], arrInputValue[intI]); } } function saveValue(intId,strValue) { arrInputValue[intId]=strValue; } function createInput(id,value) { return "<input type='text' id='test "+ id +"' onChange='javascript:saveValue("+ id +",this.value)' value='"+ value +"'><br>"; } function deleteInput() { if (arrInput.length > 0) { arrInput.pop(); arrInputValue.pop(); } display(); } // End --> </script>
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <body> <form id="form1" name="form1" method="get" action=""> <p id="parah">Création dynamique de champs</p> <a href="javascript:addInput()">Ajouter un ou des champ(s)</a><br /> <a href="javascript:deleteInput()">Retirer un ou des champ(s)</a> <p><font face="arial" size="1">Powered and Generated by </font><a href="http://www.G1SCRIPT.com" target="_blank"><font face="arial,helvetica" size="1">G1Script.Com</font></a></p> <p> <label> <input type="submit" name="Submit" value="Envoyer" /> </label> </p> </form> </body>
Y a juste un soucis, et de taille, c'est que les valeurs qui se situent dans les cases ajoutées ne sont pas transmises. Ca fait un moment que je suis dessus et je ne vois pas comment je pourrais faire.
Avez-vous une idée de la manière dont je pourrai m'y prendre pour que ces valeurs soient transmises?
Merci d'avance
Cédric
Partager