Javascript 剑道UI中的正则表达式-时间选择器
有人能告诉我如何为KendoUI的时间选择器添加正则表达式验证/模式吗 我尝试了Javascript 剑道UI中的正则表达式-时间选择器,javascript,jquery,typescript,kendo-ui,timepicker,Javascript,Jquery,Typescript,Kendo Ui,Timepicker,有人能告诉我如何为KendoUI的时间选择器添加正则表达式验证/模式吗 我尝试了(1[012]|[1-9]):[0-5][0-9](\\s)?(?I)(am | pm)直接在输入字段中指定的模式。没有按预期工作 我需要的是,计时器选择器绝不允许用户输入除AM或PM之外的字母字符和除以外的特殊字符:colan 但在小提琴中,它将由用户按字母顺序输入。当从时间选择器中选择时间时,它也会被清除 如果我的解释不明白,请看我的小提琴。 仍然在使用Jquery处理它。但失败了 尝试以下代码,但使AM/PM
(1[012]|[1-9]):[0-5][0-9](\\s)?(?I)(am | pm)
直接在输入字段中指定的模式。没有按预期工作
我需要的是,计时器选择器绝不允许用户输入除AM或PM之外的字母字符和除以外的特殊字符:colan
但在小提琴中,它将由用户按字母顺序输入。当从时间选择器中选择时间时,它也会被清除
如果我的解释不明白,请看我的小提琴。
仍然在使用Jquery处理它。但失败了
尝试以下代码,但使AM/PM消失
function replaceBadInputs(val){
val = val.replace(/[^\dh:]/, "");
val = val.replace(/^[^0-2]/, "");
val = val.replace(/^([2-9])[4-9]/, "$1");
val = val.replace(/^\d[:h]/, "");
val = val.replace(/^([01][0-9])[^:h]/, "$1");
val = val.replace(/^(2[0-3])[^:h]/, "$1");
val = val.replace(/^(\d{2}[:h])[^0-5]/, "$1");
val = val.replace(/^(\d{2}h)./, "$1");
val = val.replace(/^(\d{2}:[0-5])[^0-9]/, "$1");
val = val.replace(/^(\d{2}:\d[0-9])./, "$1");
return val;
}
// Apply input rules as the user types or pastes input
$('.houronly').keyup(function(){
var val = this.value;
var lastLength;
do {
// Loop over the input to apply rules repeately to pasted inputs
lastLength = val.length;
val = replaceBadInputs(val);
} while(val.length > 0 && lastLength !== val.length);
this.value = val;
});
// Check the final result when the input has lost focus
$('.houronly').blur(function(){
var val = this.value;
val = (/^(([PM][AM][01][0-9]|2[0-3])h)|(([01][0-9]|2[0-3]):[0-5][0-9])$/.test(val) ? val : "");
this.value = val;
});
希望有人能帮助我,将来也能帮助别人
提前感谢请将复制代码的来源记入贷方,好吗?这是最起码的一点,当您使用的代码不是您自己编写的。什么东西不适合JSFIDLE?(除了接受
29:00 AM
)它属于官方电视台。请链接到来源。@Halcyon在那里删除时间并键入一些字符,然后从中选择时间。那些角色会像预期的那样消失,但我不想那样进入。。在某些情况下,键码验证将使输入框禁用