Вимкнути час вибору часу завантаження дати


101

Я використовую інструмент вибору часу завантаження дати у своєму веб-додатку, зроблений у PHP / HTML5 та JavaScript. Зараз я використовую один звідси: 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
Додайте відповідний код, скориставшись Правка ...
Praveen Kumar Purushothaman

2
@Steve, ми не всі екстрасенси, лише деякі з нас - xD
Тімо Хуовінен

Для мене це minView:'month'спрацювало, я не хотів показувати підбір часу. Я отримав допомогу з їх сховища github. github.com/smalot/bootstrap-datetimepicker/isissue/…
кодекс

Відповіді:


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, яку ви цитуєте, не зафіксована в документації, на яку ви посилаєтесь.
Джеремі Бертон

2
Відповідь невірна стосовно питання. Питання полягало в тому, як відключити час, а не дату. Крім того, цей код, ймовірно, все ще не буде працювати, оскільки він приєднує вибору дати до батьків div(можливо, бібліотека обробляє це і шукає <input>-sub-елементи)
Peter Ilfrich

12
pickDate і pickTime були видалені в поточній версії програми Bootstrap Etimenasp Eonasdan. Використовуйте натомість формат.
gl03

3
Це неправильно, якщо налаштування формату порушує інтернаціоналізацію
Кікін-Сама

41

Я спробував усі розміщені тут рішення, але жодне з них не працювало на мене. Мені вдалося відключити час, використовуючи цей рядок коду в моєму jQuery:

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

Це встановило формат лише на сьогоднішній день і повністю відключило час. Сподіваюся, це допомагає.


5
З усіх рішень на цій сторінці це єдине, що працювало для мене. Використовуючи v4.7.14 bootstrap-datetimepicker lib.
Джош Бучея

2
Просто щоб уникнути плутанини, оскільки, здається, є кілька аналогічно вибраних дату вибору часу
Пол Калабро

Дякую, це працювало для мене, однак у моїй формі все ще відображається піктограма для переходу до вибору часу, і вона дозволяє вам перемикатися, потім показує 00:00. Це не змінює те, що подається з формою, але чи є якийсь спосіб видалити значок годинника, щоб користувач не міг отримати доступ до форми форми вибору часу? Знову дякую!
jackerman09

Ви повинні використовувати іншу версію DateTimePicker, оскільки піктограма часу зникла на моєму.
Celt

26

Це для: Вибір завантаження дати Eonasdan's Bootstrap Datetimepicker

Перш за все, я надав би idатрибут для, <input>а потім ініціалізував дату timepicker безпосередньо для цього <input>(а не для батьківського контейнера):

<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 тепер використовує формат, щоб визначити, чи є компонент часу. Якщо компонент часу немає, це не дозволить вам вибрати час (і приховати піктограму годинника).


Чому це було проголосовано? Це єдина відповідь, яка правильно пояснює, що параметр плагіна змінився в останній версії. Врятував би мене кілька хвилин розгубленості, якби це була найкраща відповідь.
gl03

1
Це має бути дата
CAPITALS,

Так, саме так визначається формат дати в Javascript (всупереч тому, як визначено формат дати / часу в Java). Узяв у мене трохи часу, щоб розібратися і в цьому.
Пітер Ільфріх

Дякую, це працювало для мене, однак у моїй формі все ще відображається піктограма для переходу до вибору часу, і вона дозволяє вам перемикатися, потім показує 00:00. Це не змінює те, що подається з формою, але чи є якийсь спосіб видалити значок годинника, щоб користувач не міг отримати доступ до форми форми вибору часу? Знову дякую!
jackerman09

jackerman09, будь ласка, пам’ятайте про використану вами версію datetimepicker. Описана поведінка стосується Eonasdan's datetimepicker v3, v4. Якщо ви використовуєте останню версію (яку ви повинні), то, якщо компонент часу не буде у форматі, автоматично видаляється значок годинника. І будь ласка, не публікуйте однаковий коментар до кількох відповідей ... Це говорить про відсутність мотивації ...
Пітер Ільфріх,

20

Я витратив деякий час, намагаючись розібратися в цьому через оновлення з DateTimePicker. Ви б ввели у форматі, заснованому на документації moment.js . Ви можете використовувати те, що показали інші відповіді:

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

Або ви можете скористатися деякими локалізованими форматами moment.js, передбаченими для створення дати, наприклад:

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

Використовуючи це, ви зможете відображати лише час ( LT) або дату ( L) на основі локальної точки . Документація для датчика часу не зрозуміла мені, що вона автоматично адаптується до введеного вводу (дати або лише часу) за допомогою moment.jsформату. Сподіваюся, це допомагає тим, хто все ще шукає.


4
Це найкраща відповідь, оскільки вона включає формат, залежний від локальності, а не "жорстке кодування" формату.
Нан

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

Спробуйте, чи працює він і для вас


Працює як шарм :) Дякую. Чи можу я запитати, що таке налаштування minView? Без цього параметра відображається час.
FrenkyB

я не знаю, але у мене також є ця проблема і її вирішити для цього коду.
ImBhavin95

Ваша думка була правильна. Більше того тут: github.com/smalot/bootstrap-datetimepicker/isissue/416 .
FrenkyB

Ідеально! Щоб не порушити локаль, використовуйте:$('#datetimepicker').datetimepicker({ minView: 2, pickTime: false, language: 'pt-BR' });
Алін Матос

6

Ініціалізуйте свій датчик часу таким чином

Для відключення часу

$(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"

тому приклад завантажувального пристрою для дд мм гггг:

<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

Для версії bootstrap 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

Це дозволяє показувати час у полі введення, але приховує кнопку вибору часу, яка є другим елементом у гармошці

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

-1

Я знаю, що це пізно, але відповідь - просто зняти "час" зі слова, datetimepickerщоб змінити його datepicker. Ви можете відформатувати його dateFormat.

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

Я не впевнений, чому ти дав мені мій коментар, Дмитро, адже він насправді відповідає на запитання плаката. Те, що існують різні формати дати, не має відношення до питання, і тут показано лише як приклад.
Зелений світанок

-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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.