你如何在jQuery中缓存变量?

时间:2011-01-05 21:38:35

标签: jquery

如果我不断引用:

$('#' + n + ':nth-child(2)').val()

然后如何将$('#'+ n)缓存到变量中?

$n = $('#' + n);
$n:nth-child(2)

3 个答案:

答案 0 :(得分:6)

试试这个:

var $n = $('#' + n); 
var $child = $(":nth-child(2)", $n);

答案 1 :(得分:1)

另一种方式:

$n = $('#' + n);
$n.find(":nth-child(2)");

答案 2 :(得分:1)

您需要使用.filter(),它将选择器应用于jQuery对象根目录的元素而不是.find()或上下文参数,它们在根目录内搜索元素。

var $n = $('#' + n);
var second = $n.filter(':nth-child(2)');

假设你问题中的初始选择器评估为:

$('#someID:nth-child(2)')

如果是的话,它会引起我的关注,因为只有一个元素someID

为了给出更确定的答案,我们需要知道n的价值。