JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.3/inputmask/inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.3/inputmask/jquery.inputmask.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.3/inputmask/inputmask.regex.extensions.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.3.3/inputmask/inputmask.date.extensions.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<input name="field1" id="field1" class="inputmask" data-inputmask="'mask': 'h:s t\\m','placeholder': 'hh:mm xm', 'alias': 'h:s t','autoUnmask':true" />
<button id="button">Get</button>
JavaScript
function generateTime() {
var times = [];
Array(24).join(',').split(',').forEach(function(_, index) {
var hour = index;
if (hour < 10) {
hour = '0' + hour;
}
times.push({
label: moment(hour + ':00', 'HH:mm').format('hh:mm a'),
value: moment(hour + ':00', 'HH:mm').format('hhmma')
});
times.push({
label: moment(hour + ':30', 'HH:mm').format('hh:mm a'),
value: moment(hour + ':30', 'HH:mm').format('hhmma')
});
});
return times;
}
$('.inputmask').inputmask();
$('.inputmask').autocomplete({
source: function custom_source(request, response) {
var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
response($.grep(generateTime(), function(value) {
return matcher.test(value.value) || matcher.test(value.label);
}));
}
});
$('#button').click(function() {
console.log($('input').val())
});