Signaler

[JavaScript] Activer/Désactiver des champs da [Fermé]

Posez votre question Utilisateur anonyme - Dernière réponse le 14 oct. 2008 à 09:57 par Dante-33
Bonjour,
Je souhaiterais faire un formulaire d'envoi d'invitations.

Le formulaire se présente de la manière suivante.

un label accompagné d'un champ pour le nom de l'envoyeur | un label accompagné d'un champ pour l'email de l'envoyeur

un textarea pour le message pour le(s) destinataire(s)

un label accompagné d'un champ pour le nom du destinataire 1 | un label accompagné d'un champ pour l'email du destinataire 1

un bouton "ajouter un destinataire". un bouton "supprimer un destinataire".

Si on clique sur le bouton "ajouter un destinataire" cela fait apparaitre deux champs :

un label accompagné d'un champ pour le nom du destinataire 2 | un label accompagné d'un champ pour l'email du destinataire 2
et ainsi de suite

Si on clique sur le bouton "supprimer un destinataire" cela supprime deux champs :

un label accompagné d'un champ pour le nom du destinataire 2 | un label accompagné d'un champ pour l'email du destinataire 2
et ainsi de suite

Voici le lien vers le modèle que j'ai suivi.
http://www.quirksmode.org/dom/domform.html

J'ai l'impression d'avoir tout suivi à la lettre mais cela ne fonctionne pourtant pas.
Si quelqu'un pouvait éclairer ma lanterne ...

J'ai passé tout mon lundi sur ça sans résultat. Ça va me rendre dingue
Afficher la suite 
Utile
+1
plus moins
personne ne peux m'aider ??

Voici mon code
J'arrive à faire retirer les champs mais pas a en ajouter.

<?php
include_once("squelette.php");
$monSquelette = new CSquelette;
$monSquelette->fctDoctype();
$monSquelette->fctTitleDescriptionKeywords("leTitre","laDescription","LesKeywords");
$monSquelette->fctFinMetaDebutBody();
?>
	<!-- La phrase d'intro est à remplir ici -->
	<p></p>
	
	<script type="text/javascript" src="invite.js"></script>
<?php
$monSquelette->fctFinHeader()
?>
	<!-- Le contenu est à rempli ici -->
	<div id="content">
	
			Your name : <input name="yourName" />			Your email : <input name="yourEmail" /><br /><br />
			Your message : <textarea rows="5" cols="20" name="yourMessage"></textarea>
			
		<div id="readroot" style="display: none">
			<input type="button" value="Remove review" onclick="this.parentNode.parentNode.removeChild(this.parentNode);" /><br /><br />
			Her/His name : <input name="herHisName" />			Her/His email : <input name="herHisEmail" /><br /><br />
		</div>

		<form method="post" action="/cgi-bin/show_params.cgi">

			<span id="writeroot"></span>
			<input type="button" id="moreFields" value="Add recipient" />
			<input type="submit" value="Send form" />
		</form>

	</div>
<?php
$monSquelette->fctPiedDePageEtFin();
?>


et ça c'est le javascript je n'y est pas touché c'est exactement le même que sur http://www.quirksmode.org/dom/domform.html

var counter = 0;

function moreFields() {
	counter++;
	var newFields = document.getElementById('readroot').cloneNode(true);
	newFields.id = '';
	newFields.style.display = 'block';
	var newField = newFields.childNodes;
	for (var i=0;i<newField.length;i++) {
		var theName = newField[i].name
		if (theName)
			newField[i].name = theName + counter;
	}
	var insertHere = document.getElementById('writeroot');
	insertHere.parentNode.insertBefore(newFields,insertHere);
}

window.onload = moreFields;

Cette réponse vous a-t-elle aidé ?  

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !