jQueryUI的日期选择器的定位:如何相对于它会自动显示其位置设置?(Positioning of

2019-10-21 03:45发布

我上有一个过滤箱搜索页面。 在这个盒子是两个日期的过滤器,前后。 每个日期过滤器使用jQuery UI的,日期选择器。 第一个是这样的:

第二个看起来像这样:

我需要为以前的日期箱(图片2)日历在同一个地方的日期框(图片1)露面。 我不认为我可以为硬编码的第二个日历的位置,但因为虽然这可能在我的电脑上工作,更宽或更小的屏幕很可能有它在错误的地方。 我也无法将其设置为一个相对值,因为它的位置是使用绝对值已设置。 我怎样才能使第二日历上显示,说200至的地方它会自动显示在左边?

Answer 1:

我最初以为你需要拉成“OnShow中”事件,所以下面想到的是火车,我发现这太问题: 如何更改jQuery UI的日期选择器的位置?

在从后下面的示例中所示的事件处理程序,就可以正确设置位置,即。 相对于其他的控制。

$("#datepicker").datepicker({
    beforeShow: function (input, inst) {
        setTimeout(function () {
            inst.dpDiv.css({
                top: 100,
                left: 200
            });
        }, 0);
    }
});


Answer 2:

我用atom.gregg的答案拿出了解决方案:

$("#beforedate").datepicker({
    beforeShow: function(input, inst) {
        setTimeout(function () {
            var offsets = $("#afterdate").offset();
            var top = offsets.top + 25;
            inst.dpDiv.css({
                top: top,
                left: offsets.left,
            });
        });
    }
});


文章来源: Positioning of JqueryUI datepicker: how to set its position relative to where it would automatically show up?