JQuery доступ брат и сестра TD в таблице - PullRequest
1 голос
/ 23 мая 2010

У меня есть следующий HTML-код. Я пытаюсь сделать так, чтобы div с именем javaRatingDiv отображался после того, как установлен флажок с именем java.

Я не могу понять, как перейти к следующему TD в таблице через jquery.

<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" />&nbsp;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>

Ответы [ 2 ]

2 голосов
/ 23 мая 2010

Ради вопроса и в случае нескольких «javaRatingDivs» это будет работать внутри функции щелчка флажка:

$(this).parent().next().find('div').show();

.parent () получает родительский элемент .next () получает следующего брата, такого как NEXT td .find (селектор) позволяет вам найти что-то внутри этого брата

Эта информация предназначена для случаев, когда вы сталкиваетесь с проблемами нескольких предметов, и НЕ имеет идентификаторов для прямой ссылки. В приведенном выше случае, $ ('# javaRatingDiv'). Show (); будет отлично работать, как упоминал Патрик.

1 голос
/ 23 мая 2010

Поскольку у div есть идентификатор, вы можете получить к нему прямой доступ.

$('#javaRatingDiv');

Это будет захватывать div с идентификатором 'javaRatingDiv'.

...