[英]How do I make a textbox that only accepts time(hh:mm)?
我在asp .net页面有一个文本框。 我为文本框写的javascript / jquery只接受时间(hh:mm格式)
我对使用Mask验证器不感兴趣
任何帮助赞赏
也许使用只允许格式为'01:01:2013'的值的正则表达式。 我对regExps并不是不可思议,但类似的东西可以解决这个问题......
var date_check = /[0-9]+ : ([0-9]) + : +[0-9]/;
if(yourtextboxname.value.match(date_check))
{
// whatever you want it to do now...
return true;
}
else {
alert("Invalid date");
return false;
}
这是HTML上下文:
<input type="text" id="field-time" name="timeInput" class="small form-control input-md ng-valid ng-dirty" ng-model="time" placeholder="HH:MM" ng-keypress="validateTimeSlot(time)"/>
这是JS Angular函数:
$scope.validateTimeSlot=function (time) {
var timeSlot = $scope.time;
var validTimeFormat = /^(2[0-3]|[01]?[0-9]):([0-5]?[0-9])$/;
if(timeSlot == time && angular.isDefined(timeSlot) && !timeSlot.match(validTimeFormat)){
$scope.error = "Please Enter ' Time' in HH:MM format ";
}
我使用jQuery
的插件timepicker
: http : timepicker
有一个掩码输入JQuery插件将处理掩码。 见http://digitalbush.com/projects/masked-input-plugin/
$("#YourTextBox").mask("99:99");
masked将验证仅输入数字。你仍然需要javascript代码通过检查hh和mm是否介于00和60之间来验证数字
你可能想看看这个
http://digitalbush.com/projects/masked-input-plugin/
或者您需要自己构建它: https : //snipt.net/GerryEng/jquery-making-textfield-only-accept-numeric-values/
你将不得不添加:艰难和文本长度修复/数字验证 - 我希望你明白这一点
尊敬的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.