【问题标题】:Bootstrap datetimepicker in a div visible on mouseover在鼠标悬停时可见的 div 中引导 datetimepicker
【发布时间】:2014-06-20 09:08:44
【问题描述】:

我对 bootstrap 中的 datetimepicker 有疑问。 我有一个包含项目列表的表,在每一列上,我都有一个输入,可以对项目的每个字段进行一些搜索。 我有一个字段“creationDate”,我希望能够搜索两个日期之间的日期,因此为了节省空间,我有一个该字段的图标,它在 ng-mouseenter 上显示一个 div,其中包含带有 datetimepicker 的 2 个输入。

这部分的代码是这样的:

<td>
    <img src="/assets/css/images/unroll-icon.png" ng-mouseenter="showSelectCreationDate()" />
    <div class="selectCreationDate" id="selectCreationDate" ng-mouseleave="hideSelectCreationDate()">
        Date min. :
        <input type='text' data-date-format="DD/MM/YYYY" class="form-control" id='inputCreationDateMin' />
        <br />Date max. :
        <input type='text' data-date-format="DD/MM/YYYY" class="form-control" id='inputCreationDateMax' />
        <script type="application/javascript">
            $(function () {
                $('#inputCreationDateMin').datetimepicker({
                    pickTime: false
                });
            });

            $(function () {
                $('#inputCreationDateMax').datetimepicker({
                    pickTime: false
                });
            });
        </script>
    </div>

</td>

问题是当我在datetimepicker弹出窗口中移动鼠标时,它被认为是从div中离开的,所以它消失了,我无法选择日期。

【问题讨论】:

    标签: css angularjs twitter-bootstrap


    【解决方案1】:

    好的,问题是当你将鼠标悬停在一个 id/class 上时,它会隐藏你的弹出窗口——试试这个:

        $(document).on("mouseover", "#nameOfyourField", function (e) {           
            //Do whatever you want to do
        });
    

    现在,如果您单击网页正文中的某个位置,弹出窗口将消失:

            $(document).on("click", "body", function () {
            $("#nameOfyourField").hide();
        });
    

    我希望这是您正在寻找的:

    【讨论】:

    • 您似乎在这里使用了一些 JQuery。但是我做了几乎相同的事情,但是我在我的项目中使用了 AngularJS。现在可以了,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-08-12
    • 2014-05-10
    • 2017-10-05
    • 2015-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多