我有一个带有3个输入字段的表单。HTML看起来像:
<label>Name </label> <input .../>
<label>Email </label> <input .../>
<label> Password </label><input .../>
我为输入标记保留了代码,因为这与这里无关。现在在脚本部分中,我想在我的一些<label>
标签中添加一个“彩色”类,以#333为这些标签的背景着色(嗯,不要介意目标。我知道通过以下方式选择标签非常容易只需将所需的标签包装在类或id中即可。但是我正在练习,想使用更复杂的jQuery选择器选择元素)。我尝试了这个:
$('label:nth-child (1)').add ('label:nth-child (2)').addClass ('colored')
但是它仅对第一个标签(具有值Name的标签)上色。怎么了?
这是一个普遍的误解。出于与一起使用的索引的目的,该:nth-child
元素是否为标签并不重要。label:nth-child(2)
标记中没有任何内容,因为该:nth-child(2)
元素是一个input
(假设您显示的内容位于其父元素的开头)。
您可以通过jQuery的.eq
方法来实现您想做的事情:
$('label:nth-child (1)').add($('label').eq(1)).addClass('colored');
(与不同:nth-child
,的索引.eq
从零开始)
或更可能的是:
$('label').eq(0).add($('label').eq(1)).addClass('colored');
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句