ブートストラップ日付時間ピッカーで時間を無効にする


101

PHP / HTML5およびJavaScriptで作成されたWebアプリケーションでブートストラップ日付時刻ピッカーを使用しています。私は現在ここから1つ使用しています:http : //tarruda.github.io/bootstrap-datetimepicker/

時間をかけずにコントロールを使用すると、機能しません。空白のテキストボックスが表示されるだけです。

日時ピッカーから時間を削除したいだけです。これに対する解決策はありますか?

<div class="well">
    <div id="datetimepicker4" class="input-append"> 
        <input data-format="yyyy-MM-dd" type="text"></input> 
        <span class="add-on"> 
            <i data-time-icon="icon-time" data-date-icon="icon-calendar"> </i> 
        </span> 
    </div> 
</div> 
<script type="text/javascript"> 
    $(function() { 
        $('#datetimepicker4').datetimepicker({ pickTime: false }); 
    }); 
</script>

4
使用しているコードを示してください。私たちはすべて物理的ではありません
スティーブ

1
Edit ...を使用して問題のコードを追加します
Praveen Kumar Purushothaman '17

2
@Steve

これminView:'month'はうまくいったので、時間の選択を表示したくありませんでした。私はgithubリポジトリから助けを得ました。github.com/smalot/bootstrap-datetimepicker/issues/...
焼けるように暑いコード

回答:


134

以下のスニペットを確認してください

<div class="container">
<div class="row">
    <div class='col-sm-6'>
        <div class="form-group">
            <div class='input-group date' id='datetimepicker4'>
                <input type='text' class="form-control" />
                <span class="input-group-addon"><span class="glyphicon glyphicon-time"></span>
                </span>
            </div>
        </div>
    </div>
    <script type="text/javascript">
        $(function() {              
           // Bootstrap DateTimePicker v4
           $('#datetimepicker4').datetimepicker({
                 format: 'DD/MM/YYYY'
           });
        });      
    </script>
</div>

あなたはhttp://eonasdan.github.io/bootstrap-datetimepicker/を参照することができますドキュメントおよびその他の機能の詳細についてを。これはうまくいくはずです。

i18nをサポートするための更新

moment.jsのローカライズされた形式を使用します。

  • L 日付のみ
  • LT 時間のみ
  • L LT 日付と時間

その他のローカライズされたフォーマットについては、moment.jsのドキュメント(https://momentjs.com/docs/#/displaying/format/)をご覧ください。


引用するpickDateオプションは、リンク先のドキュメントに記載されていません。
Jeremy Burton

2
その質問についての答えは間違っています。問題は、日付ではなく時間を無効にする方法でした。その上、そのコードはおそらく日付ピッカーを親にアタッチするため、おそらくまだ機能しdivません(おそらくライブラリがこれを処理して<input>-sub-elements を検索します)
Peter Ilfrich

12
EonasdanのBootstrap Datetimepickerの現在のバージョンでは、pickDateとpickTimeが削除されています。代わりにフォーマットを使用してください。
gl03 2015年

3
これは間違っています。設定形式が国際化を壊します
Kikin-Sama 2017

41

ここに掲載されているすべての解決策を試しましたが、どれもうまくいきませんでした。私のjQueryで次のコード行を使用して時間を無効にすることができました:

$('#datetimepicker4').datetimepicker({
    format: 'YYYY-MM-DD'
});

これにより、フォーマットは日付のみに設定され、時刻は完全に無効になります。お役に立てれば。


5
このページのすべてのソリューションの中で、これが私にとって有効な唯一のソリューションです。bootstrap-datetimepicker libのv4.7.14を使用します。
Josh Buchea

2
同じような名前の日時ピッカーがいくつかあるため混乱を避けるために、これがこの特定のプラグインでうまく機能したことを指摘します。eonasdan.github.io
Paul Calabro

おかげでこれでうまくいきましたが、フォームにはまだタイムピッカーに切り替えるアイコンが表示されており、切り替えてから00:00と表示されます。フォームで送信される内容は変更されませんが、ユーザーがフォームの時間ピッカー部分にアクセスできないように時計アイコンを削除する方法はありますか?再度、感謝します!
jackerman09 2015年

私の時間アイコンが消えたため、別のバージョンのDateTimePickerを使用している必要があります。
ケルト、2015年

26

これは:Eonasdan's Bootstrap Datetimepicker

最初に、にid属性を指定し<input>、そのために<input>(親コンテナーではなく)そのためにdatetimepickerを直接初期化します。

<div class="container">
  <input data-format="yyyy-MM-dd" type="text" id="datetimepicker"/>
</div>
<script type="text/javascript">
  $(function() {
    // Bootstrap DateTimePicker v3
    $('#datetimepicker').datetimepicker({
      pickTime: false
    });
    // Bootstrap DateTimePicker v4
    $('#datetimepicker').datetimepicker({
      format: 'DD/MM/YYYY'
    });
  });
</script>

v3の場合:Ck Mauryaの答えに反して:

  • pickDate: false 日付を無効にし、時間の選択のみを許可します
  • pickTime: false 時間を無効にし、日付を選択することのみを許可します(これはあなたが望むものです)。

v4の場合:Bootstrap Datetimepickerは、フォーマットを使用して、time-componentが存在するかどうかを判断するようになりました。時間コンポーネントが存在しない場合は、時間を選択できません(時計アイコンを非表示にできません)。


なぜこれが投票されたのですか?これは、プラグインのオプションが最新バージョンで変更されたことを正しく説明する唯一の回答です。もしこれが一番の答えだったら、数分の混乱から私を救ったでしょう。
gl03 2015年

1
奇妙なことに、機能するためには大文字の日付でなければなりません
sidonaldson

ええ、それは、Javascriptで日付形式を指定する方法に過ぎません(Javaで日付/時刻形式を定義する方法とは逆です)。それを理解するのにも少し時間がかかりました。
Peter Ilfrich 2015年

おかげで、これは私にとってはうまくいきましたが、私のフォームにはタイムピッカーに切り替えるアイコンがまだ表示されており、切り替えてから00:00と表示されます。フォームで送信される内容は変更されませんが、ユーザーがフォームの時間ピッカー部分にアクセスできないように時計アイコンを削除する方法はありますか?再度、感謝します!
jackerman09 2015年

jackerman09、使用するdatetimepickerのバージョンに注意してください。説明されている動作は、Eonasdanのdatetimepicker v3、v4に適用されます。最新の(使用する必要がある)を使用している場合、形式に時間コンポーネントがないと、時計のアイコンが自動的に削除されます。そして、同じコメントを複数の回答に投稿しないでください...意欲の欠如を示唆しています...
Peter Ilfrich

20

で更新したため、これを理解するために少し時間を費やしましたDateTimePickermoment.jsのドキュメントに基づいた形式で入力します。他の回答が示したものを使用できます。

$('#datetimepicker').datetimepicker({ format: 'DD/MM/YYYY' });

または、moment.jsが提供するローカライズされた形式のいくつかを使用して、次のような日付のみを実行することもできます。

$('#datetimepicker').datetimepicker({locale: 'fr', format: 'L' });

これを使用すると、ロケールに基づいて時刻(LT)または日付(L)のみ表示できます。datetimepickerのドキュメントは、moment.jsフォーマットを介して提供された入力(日付または時刻のみ)に自動的に適応することを私には明確ではありませんでした。これがまだ探している人のために役立つことを願っています。


4
フォーマットには「ハードコーディング」するのではなく、ロケール依存のフォーマットが含まれているため、これが最良の答えです。
ナーン、2015

17
$('#datetimepicker').datetimepicker({ 
    minView: 2, 
    pickTime: false, 
    language: 'pt-BR' 
});

それもあなたのために働くなら試してください


魅力のように動作します:)どうもありがとうございました。minView設定とは何ですか?この設定がない場合、時間が表示されます。
FrenkyB 2017

私にはわかりませんが、この問題とこのコードの解決策もあります。
ImBhavin95 2017

あなたの要点は正しかった、それ以上のものはgithub.com/smalot/bootstrap-datetimepicker/issues/416です。
FrenkyB 2017

パーフェクト!:破っていないロケール、使用するために$('#datetimepicker').datetimepicker({ minView: 2, pickTime: false, language: 'pt-BR' });
アリーン・マトス

6

このようにあなたのdatetimepickerを初期化します

無効化時間について

$(document).ready(function(){
    $('#dp3').datetimepicker({
      pickTime: false
    });
});

無効日

$(document).ready(function(){
    $('#dp3').datetimepicker({
      pickDate: false
    });
});

日付と時刻の両方を無効にするには

$(document).ready(function(){
   $("#dp3").datetimepicker('disable'); 
});

疑問がある場合は、次のドキュメントを参照してください

http://eonasdan.github.io/bootstrap-datetimepicker/#options


6
<div class="container">
  <input type="text" id="datetimepicker"/>
</div>

<script type="text/javascript">
  $(function() {
    // trigger datepicker
    $('#datetimepicker').datetimepicker({
       pickTime: false,
        minView: 2,
        format: 'dd/mm/yyyy',
        autoclose: true,
    });
  });
</script>

5

これは日付のみを表示します:

$('#myDateTimePicker').datetimepicker({
        format: 'dd.mm.yyyy',
        minView: 2,
        maxView: 4,
        autoclose: true
      });

主題の詳細はこちら


2
    $(function () {
        $('#datetimepicker9').datetimepicker({
            viewMode: 'years',
            format: 'DD/MM/YYYY' /*Add this line to remove time format*/
        });
    });

1

セレクター基準は、DIVタグの属性になりました。

例は...

data-date-format="dd MM yyyy" 
data-date-format="dd MM yyyy - HH:ii p
data-date-format="hh:ii"

したがって、dd mm yyyyのブートストラップの例は次のとおりです。

<div class="input-group date form_date col-md-5" data-date="" 
    data-date-format="dd MM yyyy" data-link-field="dtp_input2" data-link-format="yyyy-mm-dd">
..... etc ....
</div>

私のJavaScript設定は次のとおりです:-

            var picker_settings = {
                language:  'en',
                weekStart: 1,
                todayBtn:  1,
                autoclose: 1,
                todayHighlight: 1,
                startView: 2,
                minView: 2,
                forceParse: 0
            };

        $(datePickerId).datetimepicker(picker_settings);

bootstrap-datetimepicker-masterファイルをダウンロードすると、これらの実際の例を見ることができます。それぞれにindex.htmlのサンプルフォルダーがあります。


1

ブートストラップ4バージョンの場合、このコードは機能します。

$('#payment-date-time-select').datetimepicker({
    startView:2,
    minView:2,
});

0

ブーストラップ日時ピッカーの時間を無効化...

   $(document).ready(function () {
        $('.timepicker').datetimepicker({
            format: "dd-mm-yy",
        });
    });

ブーストラップ日時ピッカーで日付を無効にします...

   $(document).ready(function () {
        $('.timepicker').datetimepicker({
            format: "HH:mm A",
        });
    });

0
your same code work's fine, just add some link reference

<!DOCTYPE HTML>
<html>
    <head>
        <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" rel="stylesheet">
        <link rel="stylesheet" type="text/css" media="screen"
              href="http://tarruda.github.com/bootstrap-datetimepicker/assets/css/bootstrap-datetimepicker.min.css">


    </head>
    <body>
        <div class="well">
            <div id="datetimepicker4" class="input-append"> 
                <input data-format="yyyy-MM-dd" type="text"></input> 
                <span class="add-on"> 
                    <i data-time-icon="icon-time" data-date-icon="icon-calendar"> </i> 
                </span> 
            </div> 
        </div> 

        <script type="text/javascript"
                src="http://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.min.js">
        </script> 
        <script type="text/javascript"
                src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js">
        </script>
        <script type="text/javascript"
                src="http://tarruda.github.com/bootstrap-datetimepicker/assets/js/bootstrap-datetimepicker.min.js">
        </script>
        <script type="text/javascript"
                src="http://tarruda.github.com/bootstrap-datetimepicker/assets/js/bootstrap-datetimepicker.pt-BR.js">
        </script>
        <script type="text/javascript">
            $(function () {
                $('#datetimepicker4').datetimepicker({pickTime: false});
            });
        </script>

    </body>
    </html>

0
<script type="text/javascript">
        $(function () {
                  $('#datepicker').datetimepicker({
                     format: 'YYYY/MM/DD'
               });
            });
</script>

0

これにより、入力フィールドに時間を表示できますが、アコーディオンの2番目のli要素である時間ピッカーボタンは非表示になります。

.bootstrap-datetimepicker-widget .list-unstyled li:nth-child(2){
    display: none;
}

-1

私はこれが遅いことを知っていますが、答えは単語から「時間」を単に削除して、datetimepickerそれをに変更することdatepickerです。でフォーマットできますdateFormat

      jQuery( "#datetimepicker4" ).datepicker({
        dateFormat: "MM dd, yy",
      });

私のコメントDmitryを実際に投稿した理由はわかりません。Dmitryが実際に投稿者の質問に答えているからです。さまざまなdateFormatsが存在するという事実は質問には関係なく、ここでは例としてのみ示しています。
ドーングリーン、

-1

ここにあなたのためのソリューションがあります。次のようなコードを追加するのは非常に簡単です。

    $('#datetimepicker4').datetimepicker({ 

    pickTime: false 

    minview:2;(Please see here.)

    }); 

-3
 $("#datetimepicker4").datepicker({
    dateFormat: 'mm/dd/yy',
    changeMonth: true,
    changeYear: true,
    showOtherMonths: true,
    selectOtherMonths: true,
    pickTime: false,
    format: 'YYYY-MM-DD'
});

-3

一度に時間と言語を先送りにするのではなく、これを入れて機能しない

$(function () {
    $('#datetimepicker2').datetimepicker({
              locale: 'es',
              pickTime: false
          });
});

2
あなたの答えからアイデアを得ることは難しいでしょう。
Anptk 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.