我有以下标记:
<table class="dogs">
<tr>
<td> <input class="name"> </td>
etc.
我正在尝试使用以下语句选择input
元素:
$('table.dogs > input.name')
然而,我没有结果。我做错了什么?
答案 0 :(得分:3)
我相信,当您应该寻找table
的直接孩子时,您正在寻找td
的直接孩子。尝试:
$('table.dogs td > input.name')
但在这种情况下你真的不需要>
。
答案 1 :(得分:2)
请改用此选择器:
$('table.dogs input.name')
通过这种方式,您选择的所有input
类名为name
,它们是table
s的后代(而不是直接子项),类名为dogs
。
答案 2 :(得分:1)
jQuery('parent > child')
选择由“parent”指定的元素“child”指定的所有直接子元素。
input.name
不是table.dogs
你可以使用:
$('table.dogs td > input.name')
$('table.dogs input.name')
答案 3 :(得分:0)
摆脱“&gt;” $(“table.dogs input.name”)
答案 4 :(得分:0)
在你的情况下,正确的选择器将是table.docs > tbody > tr > td > input.name
,因为除非手动指定TBODY / THEAD / TFOOT,否则所有表行都隐含在TBODY中。
简单地使用table.docs input.name
选择器允许table.docs
和input.name
之间的任何元素。
答案 5 :(得分:0)
你应该使用像这样的其他选择器。
$('table.dogs .name');
子选择器(“父&gt;子”) 选择由“parent”指定的元素“child”指定的所有直接子元素。