タグ内のエントリのコレクションを取得するための汎用JavaScript関数を作成しようとしています。例えば:
リスト付き
<ul class="collection">
<li>First Entry</li>
<li>Second Entry</li>
<li>Third Entry</li>
</ul>
div付き
<div class="collection">
<div >First Entry</div >
<div >Second Entry</div >
<div >Third Entry</div >
</div>
テーブル付き
<table class="collection">
<tr>First Entry</tr>
<tr>Second Entry</tr>
<tr>Third Entry</tr>
</table>
これが私が持っているものです:
function getEntry(a)
{
var elementCollection = document.getElementsByTagName('*');
for(var i = 0; i < elementCollection.length; i++)
{
if(elementCollection[i].className.toString() === "collection")
{
var filteredCollection = elementCollection[i].children;
alert(filteredCollection[a].innerHTML);
}
}
}
これは、リストまたはdivを処理する場合に必要なことを正確に実行しますが、テーブルを実行すると、a = 0の場合はすべてのエントリが、a!=0の場合は何も表示されません。
テーブルの動作が異なりますか、それとも何か間違ったことをしていますか?