Compter le nombre de colonnes par ligne dans une table
J'ai un tableau similaire:
<table id="table1">
<tr>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
</tr>
<tr>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
<td><input type="text" value="" /></td>
</tr>
<table>
Je veux compter le nombre de td élément dans une rangée. Je suis en train d'essayer:
document.getElementById('').cells.length;
document.getElementById('').length;
document.getElementById('').getElementsByTagName('td').length;
Il n'a pas montré de réel résultat.
- Vous devez utiliser jQuery EPG
- Par la suite, vous pouvez obtenir le nombre de lignes dans une table: document.getElementById ("someid').getElementsByTagName ("tr").longueur;
- Lorsque l'on demande une solution en Javascript, "vous devez utiliser jQuery" n'est pas une réponse.
Vous devez vous connecter pour publier un commentaire.
cellules n'est pas une propriété d'un tableau, les lignes sont. Les cellules est une propriété d'une ligne si
td
s ont un colspan 1, donc en comptant les cellules est suffisante. Toutefois, en ignorant le colspan (nombre de colonnes une cellule s'étend sur) n'est pas une bonne idée si c'est possible du colspan est autre chose que les1
.Vous pourriez faire
violon ici http://jsfiddle.net/TEZ73/
Pourquoi ne pas utiliser de réduire, afin que nous puissions prendre colspan en compte? 🙂
Tout d'abord, lorsque vous appelez
getElementById
, vous devez fournir un identifiant. o_OLe seul élément dans votre dom avec un id est le
table
élément. Si vous le pouvez, vous pouvez ajouter des id (assurez-vous qu'ils sont uniques) à votretr
éléments.Alternativement, vous pouvez utiliser
getElementsByTagName('tr')
pour obtenir une liste detr
éléments dans votre document, puis obtenir le nombre de tds.voici un violon que les journaux de la console les résultats...
Compter tous td dans la table1:
JS:
HTML:
Compter tous les td dans chaque tr de table1.
JS:
HTML:
Si le
colspan
ourowspan
est tous ensemble pour1
, en comptant les enfantstd
de la volonté de donner la bonne réponse. Toutefois, si les travées, nous ne pouvons pas compter le nombre de colonnes exactement, même par le nombre maximum detd
s de lignes. Considérons l'exemple suivant:JS:
CSS:
HTML:
Résultat:
C'est une mauvaise idée de compter les
td
des éléments afin d'obtenir le nombre de colonnes de votre tableau, parce quetd
éléments peuvent s'étendre sur plusieurs colonnes aveccolspan
.Voici une solution simple à l'aide de jquery:
JS:
HTML:
Un simple Javascript solution, voir Emilio réponse.