0

请参阅此小提琴的代码

我在一个页面上有两个select控件,我想使用 id 和控件类型的组合来选择其中一个。

如果我使用 ID 和控件类型,jquery 返回长度为0.

 $('#bothCount').text($('#Title select').length);

注意:在其他页面上,我有一个带有 id 的输入Title,这就是为什么我想过滤到仅选择控件的原因。

4

2 回答 2

4

选择器

#Title select

...是后代选择器。它查找任何select带有id Title.

如果你真的想结合 tag 和id,你可以这样做:

select#Title

例如:

$('#bothCount').text($('select#Title').length);

请注意,这样做通常没有什么意义,因为id值在页面上必须是唯一的。我知道的唯一用例是,如果您不知道该元素将具有什么标签,并且您只想在它具有特定标签类型时对其采取行动这绝对是一种边缘情况。

于 2012-10-30T15:11:58.183 回答
2

将您的 JQuery 更改为:

$('#idCount').text($('#Title').length);

$('#bothCount').text($('select#Title').length);

$('#tagCount').text($('select').length);

请注意,现在select#Title就像您尝试使用后代选择器之前一样。

这是更新的jsFiddle

于 2012-10-30T15:13:14.803 回答