Javascript 在td内单击超链接时更改td颜色
我正在使用Wicket创建一个具有多个链接和每个链接的不同功能的表。现在,我想在点击链接时更改td的颜色。我尝试了不同的代码,结果可能只是链接的一部分发生了变化,或者点击时td发生了变化,但是链接没有被点击Javascript 在td内单击超链接时更改td颜色,javascript,html,css,wicket,Javascript,Html,Css,Wicket,我正在使用Wicket创建一个具有多个链接和每个链接的不同功能的表。现在,我想在点击链接时更改td的颜色。我尝试了不同的代码,结果可能只是链接的一部分发生了变化,或者点击时td发生了变化,但是链接没有被点击 <td width=30 onclick="javascript:this.style.background = '#009999';" style='width: 22.5pt; background: #FF0004; padding: 0cm 0cm 0cm 0cm; heig
<td width=30 onclick="javascript:this.style.background = '#009999';" style='width: 22.5pt; background: #FF0004; padding: 0cm 0cm 0cm 0cm; height: 30.0pt' id=redcell>
<p class=MsoNormal align=center style='text-align: center'>
<span style='font-size: 10.0pt; font-family: "Arial", "serif"; color: #222222'>
<a href="#" wicket:id="agent_one" value="1" >
<b>
<span style='display:block; font-size: 12.0pt; color: white' >1</span>
</b>
</a>
<o:p></o:p>
</span>
</p>
</td>
您可以使用parentNode属性“深入”DOM层次结构。在您的例子中,TD是链接的父元素(中间有一个段落和一个跨度),因此您需要添加到链接中的内容如下:
onclick="javascript:this.parentNode.parentNode.parentNode.style.backgroundColor = '#009999';"
或者在完整代码的上下文中:
<td width=30 style='width: 22.5pt; background: #FF0004; padding: 0cm 0cm 0cm 0cm; height: 30.0pt' id=redcell>
<p class=MsoNormal align=center style='text-align: center'>
<span style='font-size: 10.0pt; font-family: "Arial", "serif"; color: #222222'>
<a href="#" onclick="javascript:this.parentNode.parentNode.parentNode.style.backgroundColor = '#009999';" wicket:id="agent_one" value="1" ><b><span style='display:block; font-size: 12.0pt; color: white' >1</span> </b></a>
<o:p></o:p> </span>
</p>
</td>
试试这个
<tr>
<td onclick="this.style.backgroundColor = 'Red';">Sample</td>
<td onclick="this.style.backgroundColor = 'Blue';">Data</td>
</tr>
样品
数据
我想在单击任何链接时,将其他未单击链接的颜色更改为灰色。我已经尝试过,可能会重复。我开始觉得问题在于我创建表的方式。我希望我能给你们看一张照片。我在记事本++上尝试了我的代码,并在浏览器上运行了它,但当我将其移动到wicket时,我的表保持不变。我已经尝试过了。但现在我发现这可能是我设置桌子的方式。