我想用掩码和自动完成输入日期时间。
我创建了存在问题的小型演示。
看起来自动完成认为掩码是一个文本......只有当我完成输入时,我才能从自动完成中看到一些值(如果它存在于自动完成列表中)。
有什么解决办法吗?
<input name="field1" id="field1" class="inputmask" data-inputmask="'mask': 'h:s t\\m','placeholder': 'hh:mm xm', 'hourFormat': '12', 'alias': 'datetime'"/>
function generateTime(){
var times = [];
Array(24).join(',').split(',').forEach(function (_, index) {
var hour = index;
if (hour < 10) {
hour = '0' + hour;
}
times.push(moment(hour + ':00', 'HH:mm').format('hh:mm a'));
times.push(moment(hour + ':30', 'HH:mm').format('hh:mm a'));
});
return times;
}
$('.inputmask').inputmask();
$('.inputmask').autocomplete({
source: generateTime()
});
更新:
也许是解决方案的一些起点:如果我将添加属性'autoUnmask' : true
AutoComplete 将仅适用于“小时” - 第一个符号直到我的“:”在掩码中。