Bonjour les amis,
Voici une question pour les pro car je ne suis pas un expert de javascript.
Mon formulaire comporte 3 champs
- champ (ville_du_client) est un menu alimenté par une liste de villes située dans la table "table_villes" en base de données.
- champ (date) est une date alimentée par un calendrier
- champ (nbentrees) est un tableau deux dimensions.
Ce formulaire comporte 12 lignes de ces 3 champs.
Je souhaite ne plus afficher les douze lignes mais insérer un script javascript qui ajoute automatiquement trois champs supplémentaires à la demande.
Le code PHP avec 12x3 champs fonctionne. Le javascript fonctionne avec des champs simples.
Mais ça ne fonctionne plus quand je veux ajouter le menu, la date et le tableau car je ne sais pas comment faire fonctionner le menu, le calendrier et un tableau 2 dimension en javascript.
Merci de votre aide.
PS : désolé pour les puristes, mon code est en PHP englobant de l'html. J'espère qu'il reste clair cependant.
<?php
echo '
<form action=# method="POST">
<div id="champs_formulaire" >
<select name=ville_du_client[]>
';
$req=mysql_query("SELECT villes FROM table_villes ORDER BY villes",$idconnect);
while ($ligne=mysql_fetch_row($req))
{
if ($Filtre != "")
{
if ($ligne[0] == "Paris") echo '<option value="'.$ligne[0].'" selected>'.$ligne[0].'</option>';
else echo '<option value="'.$ligne[0].'">'.$ligne[0].'</option>';
}
else
echo '<option value="'.$ligne[0].'">'.$ligne[0].'</option>';
}
echo '</select>
<input onclick="CalendrierKvh(this);" name="date[]" readonly="readonly" style="cursor: text" />
<input type="text" name=nbentrees[][1] size="2">
</div>
<script type="text/javascript" >
var div = document.getElementById(\'champs_formulaire\');
function addInput(name)
{
var input = document.createElement("input");
input.name = name;
div.appendChild(input);
}
function addField()
{
div.appendChild(document.createElement("br"));
addInput("ville_du_client[]");
addInput("date[]");
addInput("nbentrees[]");
div.appendChild(document.createElement("br"));
}
</script>
<button type="button" onclick="addField()" >Ajouter champs</button>
<button type="submit">valider</button>
</form>';
Maréchal Lyautey a écrit :Celui qui ne fait pas tout pour être le premier, le devenir ou le rester, ne demeure pas le second mais tombe fatalement le dernier.