web-dev-qa-db-ja.com

制限する方法bootstrap=将来の日付からの日付ピッカー

bootstrap=の日付ピッカーが将来の日付を取ることを制限したい。今日までの日付のみを有効にしたい。

ここに私のコードがあります

<script>
  var FromEndDate = new Date();

   $(function(){
     $('.datepicker').datepicker({
       format: 'mm-dd-yyyy',
       endDate: FromEndDate, 
       autoclose: true
     });
   });
</script>

どんな体もこれに関して助けてもらえますか

21
user2142786

実用的なソリューションのデモは次のとおりです。

http://jsfiddle.net/tjnicolaides/cjp7y/

<script>
$(function(){
    $('.datepicker').datepicker({
        format: 'mm-dd-yyyy',
        endDate: '+0d',
        autoclose: true
    });
});
</script>

編集:Bootstrap startDateとendDateをサポートするDatepickerのバージョンはこちらです: https://github.com/eternicode/bootstrap-datepicker

プラグインの現在のトップ検索結果である元のプロジェクトには、現時点ではその機能がありません: http://www.eyecon.ro/bootstrap-datepicker/

43
TJ Nicolaides

endDateプロパティを+0dに設定します

<script> 
    $(function() {
        $('.datepicker').datepicker({
            format: 'mm-dd-yyyy',
            endDate: '+0d',
            autoclose: true
        });
    });
</script>

[〜#〜] fiddle [〜#〜]

20
Pranav C Balan
$(document).ready(function(){
    $(".datepicker").datepicker({
        endDate:'today'
    });
});

これをjsユーザーに追加すると、今日の日付までの日付のみを選択でき、ユーザーはinput要素にカスタムの日付値を手動で入力できません。ユーザーがカスタム値を入力すると、自動的に現在の日付に変更されます

4
KATJ Srinath

このコードは私のために働いた..

$('#txtTo').datepicker({
    dateFormat: "dd/MM/yy",
    changeMonth: true,
    changeYear: true,
    ignoreReadonly: true,
    maxDate: 'now'
});
3
Nithya

これを試して、

$(function () {
    $('.datepicker').datepicker({
        format: 'mm-dd-yyyy',
        endDate: '+0d',
        autoclose: true
    });
});

date picker from Gitを使用しました

デモ

3
Rohan Kumar
$(function(){
    $('.datepicker').datepicker({
        format: 'mm-dd-yyyy',
        onRender:function(date){
            return date.valueOf() > FromEndDate.valueOf()?'disabled':'';
        }
     });
});
1
Rachel

プラグインの問題のため、このdatepicker.jsを使用してください。

http://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.2.0/js/bootstrap-datepicker.js

1
user2142786

オプションendDateを使用して実行できます。 endDateオプションで指定された日付以降のすべての日付が無効になります。今日以降の日付を無効にする場合は、入力タグでこれを使用します。

<input type="text" data-provide="datepicker" data-date-end-date="0d">

ソース: https://bootstrap-datepicker.readthedocs.io/en/stable/options.html#id5

0
Mark O Brian

上記のソリューションのどれも私にとってはうまくいきません。たくさんの検索とデバッグの後、最終的に修正しました。同じ問題に直面している私のような誰かが次の解決策を試すことができるなら、私は以下に私の解決策を共有しています。

var now = new Date();
$('[name=depdate]').datepicker({
    format: 'yyyy-mm-dd',
    onRender: function(date) {
        if(date.valueOf() > now.addDays(15).valueOf()) {
            return 'disabled';
        } else if(date.valueOf() < now.valueOf()) {
            return 'disabled';
        }
    }
})
.on('changeDate', function(){
    $(this).datepicker('hide');
}).data('datepicker');
0
MasoodUrRehman