1

2つの日付ピッカーフィールド間の日数を計算して、その値を入力フィールドに表示しようとしています。さまざまな方法を検索しましたが、うまくいかないようです。私はboostrap-datepicker.jsを使用しています

ここでJSフィドルを作成しましたhttp://jsfiddle.net/KLpq7/201/これまでの私の努力を見ることができます

私のJSは次のとおりです

function days() {
        var a = $("#datepicker_start").datepicker('getDate').getTime(),
            b = $("#datepicker_end").datepicker('getDate').getTime(),
            c = 24*60*60*1000,
            diffDays = Math.round(Math.abs((a - b)/(c)));
        $("#totaldays").val(diffDays)
}

$('.datepicker')
.datepicker({format: 'DD, dd.mm.yyyy'})
.on('changeDate', function(ev){
$(this).datepicker('hide').blur();
});

最初の部分で私はこれを達成しようとしていますが、うまくいきません!

助けを探しています...

4

2 に答える 2

4

違いを正しく計算するjsfiddleを変更しました。私が気付いたのは、あなたがこのdd/mm/yyyyフォーマットを使用していて、デフォルトでJSが日付をとして望んでいることですmm/dd/yyyy。日付差の計算には「アメリカ」の方法で処理するのが最適ですが、「正しい」スタイルを使用する必要がある場合は、 Globalizeライブラリdd/mm/yyyyを確認することをお勧めします。

于 2013-02-11T17:07:28.333 に答える
0
function DateDiff(var date1, var date2) {
    return date1 - date2;
}

Javascriptで2つのDateオブジェクトを渡すと機能するはずです。返される結果は、2つの間のミリ秒数になります。これは、数日、数時間、または数週間などに非常に簡単に変換できます。

于 2013-02-11T16:59:34.650 に答える