如何使用javascript在仅限时间的文本字段中修复用户输入(关于模糊)
我正在尝试为以下场景找到解决方案:如何使用javascript在仅限时间的文本字段中修复用户输入(关于模糊),javascript,jquery-plugins,jquery,jquery-mask,Javascript,Jquery Plugins,Jquery,Jquery Mask,我正在尝试为以下场景找到解决方案: -我有一个textinput字段,用户只能以(01:00或13:00)等格式输入时间。 -如果用户仅在模糊上输入13,则应将其固定为:13:00 -或1应固定为01:00 -或135应固定为01:05 如果这只能通过JavaScript来实现,那就太好了,但是我已经用jquery和mask插件尝试了一些东西,但无法完成解释场景: 我的 为什么是135->01:05而不是13:05或01:35?是的,这应该是13:05我的错误。你为什么要允许135作为有效时间?
-我有一个
textinput
字段,用户只能以(01:00或13:00
)等格式输入时间。-如果用户仅在模糊上输入
13
,则应将其固定为:13:00
-或
1
应固定为01:00
-或
135
应固定为01:05
如果这只能通过
JavaScript
来实现,那就太好了,但是我已经用jquery
和mask
插件尝试了一些东西,但无法完成解释场景:我的
为什么是
135
->01:05
而不是13:05
或01:35
?是的,这应该是13:05我的错误。你为什么要允许135
作为有效时间?这不是一种人们凭直觉就能理解为01:05
No.的格式。不,如果用户匆忙输入字段,他可以输入135和模糊,应该立即更改为13:05,这样用户就不必担心。在某些情况下,你不能接受用户犯错误……如果不合适……告诉他们
$("#time").blur(function() {
var userInput = $(this).val().replace(/^([0-9])([0-9]):([0-9])_$/, "0$1:$2$3");
if(!userInput.match(/([0-1][0-9]|2[0-3]):[0-5][0-9]/)){
}else{
$(this).val(userInput);
return true;
};
}).mask("99:99");