[JS] DOM et generation de formulaire
Dark-Harmony
-
Utilisateur anonyme -
Utilisateur anonyme -
Salut à tous,
J'ai un soucis qui me bloque pas mal et n'étant pas un pro du JS, j'ai du mal à m'en sortir.
Je dois générer un formulaire (file) de manière automatique. Lorsque l'utilisateur, selectionne sa photo, celle-ci s'upload automatique, avec preview etc... lorsque celle-ci est uploadée, il faut qu'un deuxieme champ file apparaisse en dessous, pour ce faire je rappel ma fonction generant le formulaire malheureusement celui-ci ne s'ajoute pas, mais j'ai plus l'impression qu'il remplace celui déjà existant.
Voici mon code :
function formPhoto(id)
{
var table = document.createElement('table');
table.id = 'formUp'+id;
var tr = document.createElement('tr');
var td = document.createElement('td');
td.id = 'formUp'+id;
var td2 = document.createElement('td');
td2.id = 'nameUp'+id;
var form = document.createElement('form');
form.action = 'php/annonce/uploadPhoto.php';
form.method = 'post';
form.enctype = 'multipart/form-data';
form.name = 'form'+id;
form.target = 'uploadTarget';
var input = document.createElement('input');
input.type = 'file';
input.id = 'photo'+id;
input.setAttribute("onChange", "uploadPhoto("+id+")" );
td.appendChild(input);
tr.appendChild(td);
tr.appendChild(td2);
table.appendChild(tr);
form.appendChild(table);
document.getElementById("formPhoto").appendChild(form);
}
Mon problème se situe dans le getElementById, le formulaire ne "s'incrémente" pas, auriez-vous une petite astuce ou une autre solution que le getElementById
Merci beaucoup à vous :D
J'ai un soucis qui me bloque pas mal et n'étant pas un pro du JS, j'ai du mal à m'en sortir.
Je dois générer un formulaire (file) de manière automatique. Lorsque l'utilisateur, selectionne sa photo, celle-ci s'upload automatique, avec preview etc... lorsque celle-ci est uploadée, il faut qu'un deuxieme champ file apparaisse en dessous, pour ce faire je rappel ma fonction generant le formulaire malheureusement celui-ci ne s'ajoute pas, mais j'ai plus l'impression qu'il remplace celui déjà existant.
Voici mon code :
function formPhoto(id)
{
var table = document.createElement('table');
table.id = 'formUp'+id;
var tr = document.createElement('tr');
var td = document.createElement('td');
td.id = 'formUp'+id;
var td2 = document.createElement('td');
td2.id = 'nameUp'+id;
var form = document.createElement('form');
form.action = 'php/annonce/uploadPhoto.php';
form.method = 'post';
form.enctype = 'multipart/form-data';
form.name = 'form'+id;
form.target = 'uploadTarget';
var input = document.createElement('input');
input.type = 'file';
input.id = 'photo'+id;
input.setAttribute("onChange", "uploadPhoto("+id+")" );
td.appendChild(input);
tr.appendChild(td);
tr.appendChild(td2);
table.appendChild(tr);
form.appendChild(table);
document.getElementById("formPhoto").appendChild(form);
}
Mon problème se situe dans le getElementById, le formulaire ne "s'incrémente" pas, auriez-vous une petite astuce ou une autre solution que le getElementById
Merci beaucoup à vous :D
A voir également:
- [JS] DOM et generation de formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Generation ryzen - Guide
- Generateur mot de passe - Télécharger - Sécurité
2 réponses
essaie mettre tous tes champs a l'interieur d'un <div id="MonDiv" style="display: none"></div>
ca te permettra de les cacher.
if( // ta condition pour que le formulaire apparaisse ) { document.getElementById("MonDiv").style.display="block"; }
En mettant la bonne condition , je pense que ca va marcher.
ca te permettra de les cacher.
if( // ta condition pour que le formulaire apparaisse ) { document.getElementById("MonDiv").style.display="block"; }
En mettant la bonne condition , je pense que ca va marcher.