jdewit / bootstrap-timepicker

[Deprecated] A simple timepicker component for Twitter Bootstrap
MIT License
1.64k stars 1.09k forks source link

Leading '0' when 24hour format set #391

Open leetoufong opened 4 years ago

leetoufong commented 4 years ago

Hi I understand that this plugin is no longer being maintained but wondering if someone could help me with an issue. I want the input to operate as close to type="time" as possible. I am wanting there to be a leading 0 when there is a singular integer hour. Setting the defaultTime or setTime options also do not work.

For example 1 through 9 hours should display as 01 or 09.

Please see this codepen: https://codepen.io/leetoufong/pen/LYGKbKR?editors=1010 The expected result I need: 01:45:12 What is actually displaying on the input: 1:45:12 When logging the value, the return value is: 1:45:12 When manually typing a 0 then a 1, the hour value reverts back to: 1:45:12

Furthermore, this will adhere to standard ISO 24 hour time format.

leetoufong commented 4 years ago

My other issue is that I need to utilize the placeholder attribute but it seems buggy. Once a user places in a value, it goes away and never comes back until they "fully" highlight hours minutes and seconds and then delete. If they halfway fill out (for example leaving minutes empty), the value will revert to 0:00:00 once you blur out. The expected result would be that it would revert back to the HH:mm:ss placeholder.

The workaround ask would be to have the default value a HH:mm:ss string. If the user partially fills out or deletes, then it will revert back to HH:mm:ss not 0:00:00. Please see this codepen: https://codepen.io/leetoufong/pen/LYGKbKR?editors=1010 for reference

rwx666888 commented 3 years ago

Edit the source file, search for (1? '0'), do not contain "()", you can find 4 results; turn up: this.hour change into: this.hour.toString().length === 1? '0' + this.hour: this.hour