Javascript 剑道UI中的正则表达式-时间选择器

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

有人能告诉我如何为KendoUI的时间选择器添加正则表达式验证/模式吗

我尝试了
(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在那里删除时间并键入一些字符,然后从中选择时间。那些角色会像预期的那样消失,但我不想那样进入。。在某些情况下,键码验证将使输入框禁用