- 締切済み
テキストの再表示
初めまして。 JavaScriptでのことで質問させていただきます。 ボタンと押された後に、HTMLのテーブル内のテキストの番号を再度振りなおしたいと思っています。 <table id="html"> <tr> <td colspan="2">項目aaa</td> </tr> <tr> <td id="list">NO.1</td> <td>あああああ</td> </tr> <tr> <td colspan="2">項目bbb</td> </tr> <tr> <td id="list">NO.3</td> <td>ううううう</td> </tr> <tr> <td id="list">NO.4</td> <td>えええええ</td> </tr> <tr> <td colspan="2">項目eee</td> </tr> <tr> <td id="list">NO.5</td> <td>おおおおお</td> </tr> <tr> <td id="list">NO.6</td> <td>かかかかか</td> </tr> <tr> <td id="list">NO.7</td> <td>ききききき</td> </tr> </table> というようなテーブルがあって、ボタンを押すとテーブル内に1行追加されるのですが、その際「NO.」を振りなおしたいのですがどのようにすればよいでしょうか? function insertItem() { var nCount = 0; for (nLoop = 0; nLoop < document.all.html.rows.length; nLoop++) { for (nCellLoop = 0; nCellLoop < document.all.html.rows(nLoop).cells.length; nCellLoop++) { document.all.html.rows(nLoop).cells(nCellLoop).innerText = "NO." + nCount; nCount++; } } } サイトを参考にし、上記のようなものはできたのですが実行すると すべてのセルが変更されてしまい、「項目aaa」や「あああああ」も 変更されてしまいます。 何かいい方法はありますでしょうか? よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
//番号の振り方を勘違いしてなければ、こんな感じでいいと思う function renumber(){ var tb=document.getElementById('html'); var nCount=0; for(var r=0; r < tb.rows.length; r++){ var tr=tb.rows[r]; if(tr.cells.length==2){ tr.cells[0].innerHTML="NO." + ++nCount; } } }
お礼
ありがとうございます。 思っていた通りの動作ができました。 ありがとうございます。