DateTimepicker
Vue Bootstrap 5 DateTimepicker
DateTimepicker is a form that adds the function of selecting date and time without the necessity of using custom JavaScript code.
Note: Read the API tab to find all available options and advanced customization
Basic example
        
            
            <template>
              <MDBDateTimepicker label="Select a time" v-model="picker1"/>
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker1 = ref("");
                  return {
                    picker1
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker1 = ref("");
            </script>
          
        
    
Inline version
You can use inline version with property inline.
        
            
            <template>
              <MDBDateTimepicker inline label="Select a time" v-model="picker2"/>
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker2 = ref("");
                  return {
                    picker2
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker2 = ref("");
            </script>
          
        
    
Disabled
        
            
            <template>
              <MDBDateTimepicker disabled label="Select a time" v-model="picker3"/>
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker3 = ref("");
                  return {
                    picker3
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker3 = ref("");
            </script>
          
        
    
Disable past
Use disablePast prop to disallow selecting past dates.
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker9"
                disablePast 
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker9 = ref("");
                  return {
                    picker9
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker9 = ref("");
            </script>
          
        
    
Disable future
Use disableFuture prop to disallow selecting future dates.
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker10"
                disableFuture
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker10 = ref("");
                  return {
                    picker10
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker10 = ref("");
            </script>
          
        
    
Default values
      You can set default date and time with properties defaultDate and
      defaultTime.
    
        
            
            <template>
            <MDBDateTimepicker
              label="Select Date and Time"
              defaultTime="10:33 PM"
              defaultDate="22/01/2019"
              v-model="picker4"
            />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker4 = ref("");
                  return {
                    picker4
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker4 = ref("");
            </script>
          
        
    
Invalid label
      Add invalidLabel or validLabel with specified value, to change the validation label messages.
    
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker5"
                invalidLabel="Correct your input"
                validLabel="Your input is valid"
                v-model:isValid="isValid"
                v-model:isValidated="isValidated"
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker5 = ref("");
                  const isValid = ref(true);
                  const isValidated = ref(false);
                  return {
                    picker5,
                    isValid,
                    isValidated
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              
              const picker5 = ref("");
              const isValid = ref(true);
              const isValidated = ref(false);
            </script>
          
        
    
Input toggle
      Add inputToggle to the picker component to enable toggling on
      input click. It is also possible to set toggleButton property to
      false to remove the toggle button.
    
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker6"
                :toggleButton="false"
                inputToggle
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker6 = ref("");
                  return {
                    picker6
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker6 = ref("");
            </script>
          
        
    
Custom date and time options
      Use datepicker or timepicker properties to set custom options from our
      Datepicker and Timepicker components.
    
Datepicker options
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker7"
                :datepicker="{ format: 'DD, MMM, YYYY' }"
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker7 = ref("");
                  return {
                    picker7
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker7 = ref("");
            </script>
          
        
    
Timepicker options
        
            
            <template>
              <MDBDateTimepicker
                label="Select Date and Time"
                v-model="picker8"
                :timepicker="{ hoursFormat: 24 }"
              />
            </template>
          
        
    
        
            
            <script>
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              export default {
                components: {
                  MDBDateTimepicker
                },
                setup() {
                  const picker8 = ref("");
                  return {
                    picker8
                  };
                }
              };
            </script>
          
        
    
        
            
            <script setup lang="ts">
              import { MDBDateTimepicker } from "mdb-vue-ui-kit";
              import { ref } from "vue";
              const picker8 = ref("");
            </script>
          
        
    
DateTimepicker - API
Import
        
            
      <script>
        import {
          MDBDateTimepicker
        } from 'mdb-vue-ui-kit';
      </script>
      
        
    
Properties
| Name | Type | Default | Description | 
|---|---|---|---|
              container
             | 
            String | 'body' | 
            Allows to change the container for the modal. Container prop should be a valid selector of element that is mounted before the Teleport happens. | 
          
datepicker | 
            Object | {} | 
            Allows to set datepicker options. | 
dateFormat | 
            String | 'DD/MM/YYYY' | 
            Changes date format displayed in input. | 
dateTimeSeparator | 
            String | ',' | 
            Changes separator between date and time. | 
defaultDate | 
            String|Date|Number | - | 
            Allows to set default date. | 
              defaultTime
             | 
            String|Date|Number | - | 
            Allows to set default time. | 
              disabled
             | 
            Boolean | false | 
            Set a disabled attribute to input in wrapper. | 
              disablePast
             | 
            Boolean | false | 
            Use to disallow selecting past dates and time. | 
              disableFuture
             | 
            Boolean | false | 
            Use to disallow selecting future dates and time. | 
icon | 
            Boolean | true | 
            Enables icon on DateTimepicker input element | 
iconClass | 
            String | 'far fa-calendar fa-sm' | 
            Changes icon displayed on DateTimepicker input element | 
              id
             | 
            String | 'MDBInput-random id' | 
            Sets id on DateTimepicker input element | 
              inline
             | 
            Boolean | false | 
            Allows to use a inline version of datetimepicker. | 
              inputToggle
             | 
            Boolean | false | 
            Enables toggling picker on input click | 
              invalidLabel
             | 
            String | 'Invalid date format' | 
            Allows to set the value of invalid label. | 
              isValid
             | 
            Boolean |  | 
            Allows to set validity value of the date. Requires :isValidated="true" to works | 
          
              isValidated
             | 
            Boolean |  | 
            Allows for external date validation with isValid property  | 
          
              label
             | 
            String | '' | 
            Sets label on DateTimepicker input element | 
              readonly
             | 
            Boolean | false | 
            Set a readonly attribute to input in wrapper. | 
              timepicker
             | 
            Object | - | 
            Allows to set timepicker options. | 
              toggleButton
             | 
            Boolean | true | 
            Allows to remove the picker toggle button | 
              toggleBtnLabel
             | 
            String | 'Toggle Datetimepicker' | 
            Allows to set the aria-label for the toggle button. | 
v-model | 
            String | '' | 
            Returns current picked date and time | 
Methods
| Name | Description | Example | 
|---|---|---|
open | 
            Manually opens a DateTimepicker | 
              pickerRef.open()
             | 
          
close | 
            Manually closes a DateTimepicker | 
              pickerRef.close()
             | 
          
        
            
              <template>
                <MDBBtn @click="datetimepickerRef?.open()">Open</MDBBtn>
                <MDBDateTimepicker ref="datetimepickerRef" v-model="picker1" label="Select a date" />
              </template>
            
        
    
        
            
              <script>
                import { ref } from "vue";
                import { MDBDateTimepicker, MDBBtn } from "mdb-vue-ui-kit";
                
                export default {
                  components: {
                    MDBDateTimepicker,
                    MDBBtn,
                  },
                  setup() {
                    const picker1 = ref("");
                    const datetimepickerRef = ref(null);
                
                    return {
                      picker1,
                      datetimepickerRef,
                    };
                  },
                };
              </script>
            
        
    
        
            
              <script setup lang="ts">
                import { ref } from "vue";
                import { MDBDateTimepicker, MDBBtn } from "mdb-vue-ui-kit";
                
                const picker1 = ref("");
                const datetimepickerRef = ref<InstanceType<typeof MDBDateTimepicker> | null>(null);
              </script>
            
        
    
Events
| Name | Description | 
|---|---|
              close
             | 
            This event fires immediately when the DateTimepicker is closed. | 
              open
             | 
            This event fires immediately when the DateTimepicker is opened. | 
              update:modelValue
             | 
            This event fires immediately when the DateTimepicker value is changed. | 
              update:isValid
             | 
            This event fires immediately when the DateTimepicker valid value is changed | 
              update:isValidated
             | 
            This event fires immediately when the DateTimepicker validation value is changed | 
        
            
          <template>
            <MDBDateTimepicker v-model="picker" @close="doSomething" />
          </template>
          
        
    
CSS variables
        
            
        // .buttons-container
        --#{$prefix}datetimepicker-buttons-container-background-color: #{$datetimepicker-buttons-container-background-color};
        --#{$prefix}datetimepicker-button-toggle-width: #{$datetimepicker-button-toggle-width};
        --#{$prefix}datetimepicker-button-toggle-color: #{$datetimepicker-button-toggle-color};
        --#{$prefix}datetimepicker-button-toggle-font-size: #{$datetimepicker-button-toggle-font-size};
        --#{$prefix}datetimepicker-button-toggle-border-radius: #{$datetimepicker-button-toggle-border-radius};
        --#{$prefix}datetimepicker-button-toggle-min-height: #{$datetimepicker-button-toggle-min-height};
        --#{$prefix}datetimepicker-button-toggle-hover-background-color: #{$datetimepicker-button-toggle-hover-background-color};
        // .datetimepicker-toggle-button
        --#{$prefix}datetimepicker-toggle-button-transform: #{$datetimepicker-toggle-button-transform};
        // .datetimepicker-datepicker-modal
        --#{$prefix}datetimepicker-modal-container-height: #{$datetimepicker-modal-container-height};
        --#{$prefix}datetimepicker-modal-container-media-height: #{$datetimepicker-modal-container-media-height};
        
        
    
SCSS variables
        
            
        $datetimepicker-buttons-container-background-color: var(--#{$prefix}picker-header-bg);
        $datetimepicker-button-toggle-width: 50%;
        $datetimepicker-button-toggle-color: white;
        $datetimepicker-button-toggle-font-size: 23px;
        $datetimepicker-button-toggle-border-radius: 10px;
        $datetimepicker-button-toggle-min-height: 40px;
        $datetimepicker-button-toggle-hover-background-color: rgba(0, 0, 0, 0.15);
        $datetimepicker-toggle-button-transform: translate(-50%, -50%);
        $datetimepicker-modal-container-height: calc(
          $datepicker-modal-container-height + $datetimepicker-button-toggle-font-size
        );
        $datetimepicker-modal-container-media-height: calc(
          $datepicker-modal-container-media-height + $datetimepicker-button-toggle-font-size
        );