Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery选择指定控件的所有子元素_Javascript_Jquery_Jquery Selectors - Fatal编程技术网

Javascript 如何使用jQuery选择指定控件的所有子元素

Javascript 如何使用jQuery选择指定控件的所有子元素,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,我有一个带有许多子元素的: <tr><td> <span class="mySpan" /> </td></tr> <tr><td> <span class="mySpan" /> </td></tr> <tr><td> <span class="mySpan" /> </td></tr> 如何

我有一个带有许多子元素的

<tr><td>
   <span class="mySpan" />
</td></tr>
<tr><td>
   <span class="mySpan" />
</td></tr>
<tr><td>
   <span class="mySpan" />
</td></tr>

如何使用jQuery选择所有这些跨距?

“最安全”版本:

$('#myTable span.mySpan')
最短版本:

var spans = $("#myTable tr td span.mySpan");
var spans = $("#myTable .mySpan");

请注意,您可以执行以下任一操作:

$("#myTable").find(".mySpan");
$("#myTable .mySpan");
$("#myTable tr td .mySpan");
$("#myTable").find("tr").find("td").children(".mySpan");
$(".mySpan");
$("#myTable > tr > td > .mySpan");
$(".mySpan ,#myTable");

最短的应该是$(“.mySpan”),但是添加#myTable应该更快,因为它从表开始,而不是从文档根开始。@Mark Schultheis,但您可以知道文档中是否有其他跨度匹配。mySpan:)是的,因此我的解释(更快,更精确,使用#myTable:)我同意您的答案没有“错”或者:)我会注意到第一个可能是最好的,因为sizzle中从右到左的选择器,而那些带有组合选择器的可能是最差的(倒数第二个和第三个)