Super doc !!!!
Merci.
Je me permet de mettre un peu de code pour continuer sur ce sujet svp :
J'ai un lien qui appel ma fonction addRow() :
<a href="#" onclick="addRow();"><i class="icon-plus-sign"></i></a>
Voici les entêtes de colonne de mon tableau :
1 2 3 4 5
| <th style="display:none">Id </th>
<th>Nom produit</th>
<th>Stock critique</th>
<th>Statut</th>
<th>Action</th> |
Et voici mes fonctions addrow() et deleteRow() :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| function addRow(){
var cell, ligne;
// on récupère l'identifiant (id) de la table qui sera modifiée
var tableau = document.getElementById("tabAlertes");
// nombre de lignes dans la table (avant ajout de la ligne)
var nbLignes = tableau.rows.length;
ligne = tableau.insertRow(-1); // création d'une ligne pour ajout en fin de table
// le paramètre est dans ce cas (-1)
// création et insertion des cellules dans la nouvelle ligne créée
cell = ligne.insertCell(0);
cell.innerHTML = "Ligne " + nbLignes + " Cellule 0";
cell = ligne.insertCell(1);
cell.innerHTML = "Ligne " + nbLignes + " Cellule 1";
cell = ligne.insertCell(2);
cell.innerHTML = "Ligne " + nbLignes + " Cellule 2";
cell = ligne.insertCell(3);
cell.innerHTML = "Ligne " + nbLignes + " Cellule 3";
cell = ligne.insertCell(4);
cell.innerHTML = '<a class="btn btn-info" href="#" ><i class="icon-edit icon-white"></i></a> <a class="btn btn-danger" href="#" onclick="deleteRow();"><i class="icon-trash icon-white"></i></a>' ;
}
function deleteRow(){
var n;
alert(obj.parent().parents('tr:eq(0)').find('td:eq(0)').text());
// on récupère l'identifiant (id) de la table qui sera modifiée
var tableau = document.getElementById("tabAlertes");
// nombre de lignes dans la table (avant suppression de la ligne n)
var nbLignes = tableau.rows.length;
n = obj.parent().parents('tr:eq(0)').find('td:eq(0)').text();
if (n < 0 || n > (nbLignes-1))
{
alert("Erreur, valeur incorrecte");
return;
}
if (tableau.rows.length)
{
tableau.deleteRow(n); // suppression d'une ligne à l'index n
}
} |
Plusieurs questions :
1 - Du coup, pour que mon utilisateur saisisse une ligne mes cellules doivent elles contenir des input ? ou y a t'il un autre moyen ?
2- Une fois ma ligne siaise, comment faire pour que la ligne ne soit plus accessible ?
3 - Dans ma cinquième colonne, deux boutons seront insérés à chaque fois, 'modifier' et 'supprimer'. Sur le deuxième, j'appelle ma fonction deleteRow() sauf que j'ai bien l'impression que je ne rentre pas dans cette fonction, une idée svp ?
Partager