如果我不断引用:
$('#' + n + ':nth-child(2)').val()
然后如何将$('#'+ n)缓存到变量中?
$n = $('#' + n);
$n:nth-child(2)
答案 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
的价值。