代码请参阅此小提琴
我在一个页面上有两个select
控件,我想使用id和控件类型的组合来选择其中一个。
如果我使用ID和控件类型,jquery将返回长度为0
。
$('#bothCount').text($('#Title select').length);
注意:在其他页面上,我有一个id为Title
的输入,这就是为什么我想向下筛选以仅选择控件。
#Title select
是子代选择器。它查找具有id
Title
的元素的后代的任何select
。
如果你真的想结合标签和id
,你可以这样做:
select#Title
例如:
$('#bothCount').text($('select#Title').length);
请注意,这样做通常没有什么意义,因为id
值在页面上必须是唯一的。我所知道的它的唯一用例是,如果你不知道元素将具有什么标签,并且你只想在它具有特定的标签类型时对其进行操作,这绝对是一种边缘情况。
将JQuery更改为:
$('#idCount').text($('#Title').length);
$('#bothCount').text($('select#Title').length);
$('#tagCount').text($('select').length);
请注意,它现在是select#Title
,就像您以前尝试使用子代选择器一样。
这是更新后的jsFiddle。