隐藏在桌子里

hideshow within a table

本文关键字:隐藏      更新时间:2023-09-26

我正试图单击以显示表中的一些文本,其中包含以下代码:

<%      
  if isarray(myArray) <> FALSE then
  For Counter = 0 to RowNumber
%>
<tr>
 <td>col1</td>
 <td>col2</td>
 <td><a href="javascript:hideshow(document.getElementById('adiv'))"><img src="/bullet.png"/></a>
 <div id="adiv" style="display:none">Hello</div></td>
</tr>

我希望显示的文本显示在同一<td>中,在单击的同一行上,但无论单击哪一行,它都始终显示在表的第一行。

有人能指出我在这里遗漏了什么吗?

-编辑-删除了孤儿div并关闭了<a>标签,写入了Rick Hitchcock的答案。

您的a标记未关闭,并且您有一个孤立的</div>标记:

... <img src="/bullet.png"/><a></div> ...

更改为:

... <img src="/bullet.png"/></a> ...

此外:id必须是唯一的,但表的每一行都有相同的"adiv"id。您可以删除id并执行以下操作:

<td>
  <a onclick="hideshow(this.parentNode.querySelector('div'))">
    <img src="/bullet.png"/>
  </a>
  <div style="display:none">Hello</div>
</td>