• 締切済み

テキストの再表示

初めまして。 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」や「あああああ」も 変更されてしまいます。 何かいい方法はありますでしょうか? よろしくお願いいたします。

みんなの回答

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

//番号の振り方を勘違いしてなければ、こんな感じでいいと思う 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; } } }

wonder_dct
質問者

お礼

ありがとうございます。 思っていた通りの動作ができました。 ありがとうございます。

関連するQ&A