我有以下HTML代码。我想做的是,一旦选中名称为java的复选框,就会显示名为javaRatingDiv的div。
我似乎无法弄清楚如何通过jquery导航到表中的下一个TD。
<div id="languages">
<table style="width:inherit">
<tr style="height:50px; vertical-align:top">
<td>Select the languages that you are familiar with and rate your knowledge:</td>
</tr>
<tr>
<table style="width:75%;" align="center">
<tr id="tableRow">
<td id="firstTD"><input type="checkbox" name="java" value="java" /> Java</td>
<td id="secondTD" style="width:200px;">
<div id="javaRatingDiv" style="display:none">
<input name="javaRating" type="radio" value="1" class="star"/>
<input name="javaRating" type="radio" value="2" class="star"/>
</div>
</td>
</tr>
</table>
</tr>
</table>
</div>
最佳答案
出于问题的考虑和多个“ javaRatingDivs”的情况,这将在复选框单击功能内起作用:
$(this).parent().next().find('div').show();
.parent()获取父元素
.next()获取下一个同级,例如NEXT td
.find(selector)可让您在同级中找到某些东西
当您遇到多个项目的问题而没有ID直接引用时,此信息适用。在上述情况下,$('#javaRatingDiv')。show();会像patrick所说的那样运作良好。