У меня есть сложная структура таблицы на веб-странице, как показано ниже. Там потенциально может быть более глубокое вложение таблиц.Получить родительский элемент td, который находится непосредственно под tr с определенным классом
Я пытаюсь найти селектор jQuery, чтобы найти ближайший td к данному элементу ввода, с добавленным ограничением на то, что tr этого td должен иметь класс 'class1'.
Вопрос: Как я могу получить сингл «td», описанный выше в параграфе с помощью jQuery? Я пробовал код, но безуспешно.
Например, если данный входной элемент firstname
то td
непосредственно окружающий этот элемент не будет, кого я ищу, но тд с комментарием говоря <!--this is the td I am trying to get-->
является правильным тд.
Я попробовал следующий селектор, чтобы получить этот td, но его возвращаемые 6 td элементов DOM, когда я ожидал только одного. Вы можете увидеть этот код в действии на этот адрес: demo for this scenario
Code Я пытался, но он не работает
$('#firstName').parents("tr.class1").find("td");
Html вложенных таблиц
<table>
<tr class='class1'>
<td>
<!--some content here-->
</td>
<td><!--this is the td I am trying to get-->
<table>
<tr>
<td>
First Name
</td>
<td>
<input type='text' id='firstname'>
</td>
</tr>
<tr>
<td>
Last Name
</td>
<td>
<input type='text' id='lastname'>
</td>
</tr>
</table>
</td>
</tr>
</table>
Таким образом, значение '.class1' дается для ближе означает любой элемент с этим классом, который находится ближе всего к' firstname'? – Sunil
Да. 'closeest()' пересекает DOM, чтобы найти ближайший родительский элемент, который соответствует предоставленному селектору. В этом случае он ищет элемент 'td', который является прямым потомком' .class1'. –
Также кажется, что '.class1> td' найдет все td-элементы непосредственно под элементом class1, но так как вы указали ближайший к первому, так что мы получим один из этих 2 tds, ближайший. – Sunil