簡體   English   中英

Bootstrap Datepicker不會在首次點擊時觸發

[英]Bootstrap datepicker doesn't fire on first click

我正在使用以下代碼來顯示內聯日期選擇器;

    $('.show_datepicker').datepicker({
        weekStart:  1,
        startDate : '2013-07-31',
        endDate : '2013-09-30',
        format : 'yyyy-mm-dd',
    }).on('changeDate', function(e){
        $('.datepicker-inline').on('click', '.datepicker_days:not(.disabled)', function() {
            $('.loading').show(); // Show loading icon
            $("#loading_div").load("loading_url.php",function(){
                $('.loading').hide(); // Hide loading icon when finished
            });
        });
    });

問題1

一切正常,除了我第一次單擊一天時不會觸發 第一次單擊后,只要我在頁面上就可以。 但是每次刷新頁面時,我都必須第一次單擊任何日期才能使它隨后生效。

我想這是由於該函數內部存在單獨的onclick事件,但是我需要這樣做,以便從調用中排除所有.disabled天,並且無法使其正常工作。

問題2

console.log()告訴我它多次觸發 -當我第二次單擊它時,它觸發4次,當我再次單擊它時,它觸發6次,依此類推。

任何想法將不勝感激!

更新:

這是呈現的日期選擇器的html代碼:

<div id="datepicker" class="show_datepicker table table-hover table-striped" data-date="2013-08-01">
<div class="datepicker datepicker-inline">
    <div class="datepicker-days" style="display: block;">
        <table class=" table-condensed">
        [...]
        <tbody>
            <tr>
                [...]
                <td class="datepicker_days day alternative" id="2013-08-12">12</td>
                <td class="datepicker_days day alternative" id="2013-08-13">13</td>
                <td class="datepicker_days day" id="2013-08-14">14</td>
                <td class="datepicker_days day inaktiv btn-link disabled" id="2013-08-15">15</td>
                <td class="datepicker_days day" id="2013-08-16">16</td>
                <td class="datepicker_days day" id="2013-08-17">17</td>
                <td class="datepicker_days day disabled inaktiv btn-link" id="2013-08-18">18</td>
                [...]
            </tr>
        </tbody>
        [...]
    </table>
    </div>
</div>

如果單擊.disabled日期時changeDate沒有觸發,則無需擔心過濾無效日期。 您可以刪除您正確懷疑會引起多次觸發並且不響應第一次點擊的點擊處理程序-您尚未更改日期,因此尚未注冊該點擊處理程序。

.on('changeDate', function(e){
    // won't fire on a .disabled date anyway
    $('.loading').show(); // Show loading icon
    $("#loading_div").load("loading_url.php",function(){
        $('.loading').hide(); // Hide loading icon when finished
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM