インライン日付ピッカーを表示するために次のコードを使用しています。
$('.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() は、複数回起動していることを示しています。2 回目にクリックすると 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>