Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire Cours JavaScript, FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 01/07/2009, 16h05   #1 (permalink)
Membre Confirmé
 
Date d'inscription: février 2009
Localisation: Paris
Messages: 239
Par défaut supprimer ligne dans formulaire dynamique

Bonjour,

J'ai créé un formulaire et une partie de ce formulaire est dynamique. Je peux ajouter des champs en cliquant sur un bouton ajouter.

Le soucis est que je souhaite supprimer l'un de ces champs quand je le souhaite.
j'ai donc créer une fonction javascript permettant de supprimer la dernière ligne ajoutée.

mon problème est que je peu ajouter et supprimer les lignes mais dans le cas ou je supprime et je rajoute un champ le formulaire n'agit pas comme je le voudrai.
ex : j'ajoute un champ "responsable 2"
je le supprime
et j'en rajoute un apres . il m'apparaitra le champ "responsable 3" juste apres le champ "responsable 1"

en fait, le formulaire ne met pas a jour l'indice de la ligne.

voici mon formulaire
form.php
Code :
<tbody id="Responsable_corpus">
				<tr>
 
					<td>- Responsable du corpus 1 :</td>
					<td><input type="text" size="50" name="Responsable_corpus1"
						onKeyUp="javascript:couleur(this);">
						
						
						</td>
					
 
				</tr>
 
			</tbody>
			<tr>
				<td><input type="button" value="Ajouter un responsable"
					onclick="addRespCorpus()" /></td>
			</tr>
 
mon code javascript d'ajout de ligne

Code :
function addRespCorpus() {
 
	nRC++;
 
	var newRow = document.getElementById('Responsable_corpus').insertRow(-1);
	var newCell = newRow.insertCell(0);
	newCell.innerHTML = '- Responsable du corpus ' + nRC + ' : ';
	newCell = newRow.insertCell(1);
	newCell.innerHTML = '<input  type="text" size="50" name="Responsable_corpus' + nRC + '" onKeyUp="javascript:couleur(this);">';
	newCell = newRow.insertCell(2);
	newCell.innerHTML = ("<input type=button name=supprimer value=Supprimer onclick=suppression()>");
	
	
	
}
ma fonction qui permet de supprimer
Code :
function suppression()
{
	
var nb = document.getElementById('Responsable_corpus').rows.length;
document.getElementById('Responsable_corpus').deleteRow(-1);
 
 
 
}
knebhi est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 01/07/2009, 17h15   #2 (permalink)
Membre émérite
 
Avatar de Katachana
 
Date d'inscription: avril 2007
Localisation: Nantes
Messages: 720
Par défaut

En utilisant cela dans ta fonction d'ajout pour récupérer l'indice:
Code :
 
var nb = document.getElementById('Responsable_corpus').rows.length;
 
Katachana est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 02/07/2009, 12h12   #3 (permalink)
Membre Confirmé
 
Date d'inscription: février 2009
Localisation: Paris
Messages: 239
Par défaut

Citation:
Envoyé par Katachana Voir le message
En utilisant cela dans ta fonction d'ajout pour récupérer l'indice:
Code :
 
var nb = document.getElementById('Responsable_corpus').rows.length;
 
j'ai apporté les modification à mon code qui sont :

fonction ajout de ligne

Code :
 
var nRC = 1;
function add {
 
	nRC++;
	var tableau = document.getElementById('Responsable_corpus');
 
	var ligne = tableau.insertRow(-1);
 
	// var newRow = ligne;
	var nb = tableau.rows.length;
 
	var newCell = ligne.insertCell(0);
	newCell.innerHTML = ligne.rowIndex;
	newCell.innerHTML = '- Responsable du corpus ' + nRC + ' : ';
	newCell = ligne.insertCell(1);
	newCell.innerHTML = '<input  type="text" size="50" name="Responsable_corpus' + nRC + '" onKeyUp="javascript:couleur(this);">';
	newCell = ligne.insertCell(2);
	// newCell.innerHTML = ("<input type=button name=supprimer value=Supprimer
	// onclick=suppression()>");
 
	var bouton = document.createElement("input");
	bouton.type = "button";
	bouton.value = "Supprimer";
	bouton.onclick = function() {
		suppression(ligne)
	};
	newCell.appendChild(bouton);
 
}
et
la fonction suppression de ligne

Code :
 
 
function suppression(ligne) {
 
	var nb = document.getElementById('Responsable_corpus').rows.length;
	 document.getElementById('Responsable_corpus').deleteRow(-1);
 
	
 
}
 
 
j'ai toujours le même souci j'ai peut etre omis quelque chose.

merci de votre aide
knebhi est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 02/07/2009, 12h20   #4 (permalink)
Membre chevronné
 
Avatar de vermine
 
Date d'inscription: mars 2008
Messages: 644
Par défaut

Bonjour,

Et en décrémentant nRC dans la fonction de suppression ?

Code :
nRC--;
vermine est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 02/07/2009, 12h39   #5 (permalink)
Membre Confirmé
 
Date d'inscription: février 2009
Localisation: Paris
Messages: 239
Par défaut

Citation:
Envoyé par vermine Voir le message
Bonjour,

Et en décrémentant nRC dans la fonction de suppression ?

Code :
nRC--;
tu me sauve la lol

merci vraiment sa commencai a me rendre dingue surtout avec cette chaleur
knebhi est déconnecté   Envoyer un message privé Réponse avec citation
NEWS JAVASCRIPTF.A.Q JSTUTORIELS JSSOURCES JSLIVRES JS

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 11h29.


Vos questions techniques : forum d'entraide JavaScript - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.