France Hardware : Forums de discussion
Retrouvez les prix près de chez vous :  
Index du forum | Liste des membres | Liste des groupes | Inscription | F-A-Q | Recherche
Pseudo :    Password :     
22 749 membres enregistrés - 1 888 028 posts - 96 578 topics
Index des forums FH  | Index des forums DegroupNews
      Programmation
           Langages Web
                supprimer ligne tableau
24 connectés(record : 207 le 05 juin 2007 - 05 h 23)

Vous devez vous connecter pour répondre au topic.
supprimer ligne tableau

Sendrine


Messages : 1
Inscrit le 11/05/07
Ville : Paris
Non connecté
  Posté le 11 mai 2007 - 14 h 38 m 45 s
Bonjour
J'ai un ptit souci!! dans une colonne d'un tableau j'ai supprimé pour supprimer la ligne que je veux dans le tableau. chaque ligne rajoutée dans le tableau j'ai un bouton supprimer!
quand je click sur supprimer je n'arrive pas a supprimer la ligne que je veux, mais seulement la derniere ligne d'un tableau !! est ce quelqu'1 pourrai me dire comment faire ?

voici mon code:
<html>
<head>
<script LANGUAGE="JavaScript">
function ligne()
{
num = 0;
var Cell;
var nom = document.forms["formulaire"].nom.value;
var prenom = document.forms["formulaire"].prenom.value;
var tableau = document.getElementById('tableau');
var ligne = tableau.insertRow(-1);

Cell = ligne.insertCell(0);
Cell.innerHTML = num + 1;
Cell = ligne.insertCell(1);
Cell.innerHTML = nom;
Cell = ligne.insertCell(2);
Cell.innerHTML = prenom;
Cell = ligne.insertCell(3);
Cell.innerHTML = ("<input type=button name=supprimer value=Supprimer onclick=suppression()>");
document.forms["formulaire"].nom.value = "";
document.forms["formulaire"].prenom.value = "";

}
</script>
</head>
<body>
<script LANGUAGE="JavaScript">
function suppression()
{
var nb = document.getElementById('tableau').rows.length;
document.getElementById('tableau').deleteRow(-1);

}
</script>
<form name="formulaire">
Nom <input type="text" name="nom"><br>
Prenom <input type="text" name="prenom"><br>
<table name= "tableau" id="tableau" border="1">
<tr>
<td>Numéro de ligne</td>
<td>Nom</td>
<td>Prenom</td>
<td>Supprimer la ligne</td>
</tr>
</table>
</form>
<div><input type="submit" value="Ajouter une ligne" onClick="ligne()" ></div> <br>
</body>
</html>

Merci pour votre aide



Scoubidouuu

Woofy
Pour les bons tuyaux me demander

Messages : 26 215
Inscrit le 11/01/02
Ville : Paris / Grenoble
Non connecté
  Posté le 11 mai 2007 - 14 h 43 m 50 s
Lors je connais pas trop le javascript pour les tableaux, mais quand je vois ça : document.getElementById('tableau').deleteRow(-1);
A mon avis, la valeur que tu dois mettre pour deleteRow n'est pas -1 mais la ligne a supprimer non ?
Quand tu met ton bouton supprimer la ligne, en action met la fonction suppression en passant en paramètre le numéro de la ligne, que tu transmet a deleteRow.



:smileymouth: Totalement inutile, donc completement indispensable :smileymouth:

:sms:


grabber
Coordinateur
MacBook Pro 2,4 Powered

Messages : 8 556
Inscrit le 06/03/02
Ville : Angers
Non connecté
  Posté le 11 mai 2007 - 14 h 52 m 33 s
oh fuck ! sorry !!!
faut taper le dom miss ;)
en gros pour faire simple, fo faire ca :
tu dois gerer un evenement sur clic de ton bouton. cet evenement, ensuite, tu dois lui dire que tu remontes de 2 niveaux dans la dom. en fait, ton bouton est dans un td qui lui meme est dans un tr, ok ? donc tu remontes de 2 miveaux pour arriver au tr et tu fais sauter le tr, c'est tout bete :jap:

toi ta fonction suppression est bidon car tu te bases su la longueur totale du tableau et tu supprimes 1 donc forcement c toujours la derniere ligne que tu vires ;)

idem pour la crea de ligne, moi je fais pas comme toi, je fais une ligne template cachee et je duplique le tr qui me sert de template, c vachement plus simple ;)

dis si tu comprends pas, on essayera de voir, g du taff cet aprem mais ca devrait aller... atta jve voir si g pas un bout de fonction tout fait a te filer...



:firefox:

grabber
Coordinateur
MacBook Pro 2,4 Powered

Messages : 8 556
Inscrit le 06/03/02
Ville : Angers
Non connecté
  Posté le 11 mai 2007 - 14 h 54 m 45 s
sendrine, tu utilises firefox ?
si oui, utilises le dom inspector, fais une recherche sur l'id de ta table, tu verras direct les niveaux du dom et de fait ce qu'il faut "remonter" :jap:



:firefox:

grabber
Coordinateur
MacBook Pro 2,4 Powered

Messages : 8 556
Inscrit le 06/03/02
Ville : Angers
Non connecté
  Posté le 11 mai 2007 - 14 h 55 m 54 s
tiens vla une fonction que j'ai faite qui fait exactment ce que tu veux, adapte ;)

    Code     
 1. function delLigneContact(bouton) {
 2. 	
 3. 	// verif si le noeud n'a pas pour id ligne_template
 4. 	var node_tr = bouton.parentNode.parentNode;
 5. 	var nb_attributs = node_tr.attributes.length;
 6. 	
 7. 	if (nb_attributs == 0) {
 8. 	  // suppression du noeud tr
 9. 	  var src_node_parent = node_tr.parentNode;
10. 	  src_node_parent.removeChild(node_tr);
11. 	  // suppression de la bulle
12. 	  supBulle();
13. 	}
14. 	if (nb_attributs == 1) {
15. 		// tr template, on ne supprime pas
16. 	  alert('Cette ligne ne peut pas \352tre supprim\351e !');
17. 	  return false;
18. 	}
19. 	
20. }



:firefox:

grabber
Coordinateur
MacBook Pro 2,4 Powered

Messages : 8 556
Inscrit le 06/03/02
Ville : Angers
Non connecté
  Posté le 11 mai 2007 - 14 h 56 m 25 s
n'hesites pas a poser des questions si tu piges pas, le dom c top :jap:



:firefox:

Page genérée en 0.3229 secondes par RahForum 2.0 | Gzip off |  Stats |  Metaforums |  RSS
© 2004 Cerbere Systems.
Prix Matériel Informatique | Informatique Lyon | Informatique Grenoble | Informatique Annecy | Informatique Marseille | Informatique Bordeaux | Forum Informatique
ADSL |Actualité ADSL | e-commerce | Commande Au Volant
Creative Commons
Message Boards and Forums Directory