我在表td中有一个隐藏的输入字段,当我选择选项A时,我希望浏览器向下滚动到SELECT *
FROM dbo.fn_getFinalPData(@CurrentMonth)
WHERE 1
AND Location = ISNULL(NULLIF(@Location,'ALL'),Location)
内的可见输入。
我试过下面的代码,但有些东西不正确。
输入字段的ID:table td
#id_a-1-host
它向下滚动但只是一点点。它不会向下滚动到输入字段。
答案 0 :(得分:3)
let ancestors;
Collection.find().forEach(r => {
if (r.ancestors) {
r.ancestors.forEach(a => {
if (!Collection.findOne(a))
missing.push(r._id);
});
}
});
基于可见性,如果隐藏它,使用scrollTop
,它在视口中不可用,因此无法按预期工作。在这些情况下使用命名锚点总是更好:
display: none
甚至空的跨度都可以:
<a name="id-a-off" id="id-a-off">
确保这是一个静态的父母。
此外,如果您设置了静态标题或其他内容,则还需要添加该高度:
<span name="id-a-off" id="id-a-off"></span>
答案 1 :(得分:0)
您可以滚动到.closest(':visible')元素。它进入父母,直到找到一个可见的。
提示:如果使用.closest(),它也将包含元素本身
return $('html, body').animate({
scrollTop: $(el).closest(':visible').offset().top
}, 400);