如何从项目列表中获取特定的 jQuery 项目?
Posted
技术标签:
【中文标题】如何从项目列表中获取特定的 jQuery 项目?【英文标题】:How to get a specific jQuery item from a list of items? 【发布时间】:2011-11-22 18:54:53 【问题描述】:我有这个:
<ul>
<li>first</li>
<li>second</li>
<li>third</li>
<li>fourth</li>
</ul>
然后我用 jQuery 全选:$('ul').find('li');
或 $('ul li');
我怎样才能从这两个 jQuery 选择器中获得例如只有第二个 li 或第三个,而让第一个和第四个单独存在?
我认为它可能适用于:
$('myselector').get(indexNumber); // however, it won't work.
对这个问题有什么想法吗?谢谢。
【问题讨论】:
什么不起作用?那是正确的。事实上,这几乎是 jquery 页面上的确切示例? api.jquery.com/get 不知何故不起作用...不知道为什么! 我的例子:$('li').get(0).show(); ?返回它根本不是一个函数。 它适用于 eq 和 nth-child。 :) 谢谢! 尝试提醒($('ul li').get(0)) 它会给你什么 【参考方案1】:$('li').get(0) 将返回普通的 DOM 元素。你不能同时调用 jQuery 方法。
【讨论】:
谢谢你的提示,我之前不知道。谢谢老兄!【参考方案2】:你可以使用nth-child
$("ul li:nth-child(2)") //this will select second child because it is 1 based index
这是一个小提琴http://jsfiddle.net/xyyWh/
【讨论】:
【参考方案3】:get
方法返回 DOM 元素,因此您必须将其包装在一个新的 jQuery 对象中。
您可以使用eq
方法:
var j = $('ul li').eq(1); // gets the second list item
【讨论】:
谢谢,与 eq 函数或 jQuery 选择器参数完美配合;)谢谢!【参考方案4】:使用:eq() Selector。例如,对于第二个元素使用:
$("ul li:eq(1)");
【讨论】:
【参考方案5】:我会尝试:
$("ul li:nth-child(2)")
【讨论】:
以上是关于如何从项目列表中获取特定的 jQuery 项目?的主要内容,如果未能解决你的问题,请参考以下文章