0

ブートストラップ ポップオーバーに UI 日付ピッカー カレンダーがあります。月を変更したときにポップオーバーを閉じる以外はすべて正常に動作します。[今日] ボタンまたはボディ クリックの外側でのみ閉じる必要があります。

クリックの外側でポップオーバーを解決してからポップオーバーを閉じる例をいくつか見つけましたが、私の場合、解決策を見つけることができません。

$('.popover-calendar').popover({
    html: true,
    placement: 'bottom',
    fixclass: 'calendar',
    content: function () {
        return $($(this).data('contentwrapper')).html();
    },
    callback: function () {
        $("#datepicker").datepicker({

        });
    }
}).on("click", function () {
    $(this).next().addClass('calendar-open');
});

$('body').on('click', function (e) {
    $('.popover-calendar').each(function () {
        if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) {
            $(this).popover('hide');
        }
    });

});

jsfiddleを確認してください

問題の発生方法 今日をクリックしてから、次または前の月のナビゲーション矢印をクリックして、ポップオーバーを閉じます (そのままにして、変更された月を表示する必要があります)。

4

1 に答える 1

0

これを試してください: JSFiddle

これで月を変更できるようになり、ボタンをクリックすると日付ピッカーが閉じます。

私が変更したコード:

$('body').on('click', function (e) {
        $('.popover-calendar').each(function () {
            $('.popover-calendar').datepicker();
            $('.popover-calendar').mousedown(function() {
                $(this).datepicker('hide');    
            });
        });
    });
于 2014-04-01T09:31:34.297 に答える