1

我在 asp .net 页面中有一个文本框。我为文本框编写的 javascript/jquery 仅接受时间(hh:mm 格式)

我对使用 Mask 验证器不感兴趣

任何帮助表示赞赏

4

6 回答 6

1

在我的头顶上遇到了这种情况,不确定这是否是您要寻找的:

<input type="datetime-local" name="bdaytime">

它由html5支持,我发现它非常有用,只是它有太多参数。

于 2013-08-09T15:26:06.867 回答
1

也许使用只允许格式为“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;
}
于 2013-08-09T15:23:09.617 回答
1

这是 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 ";
}
于 2018-10-29T20:55:04.860 回答
0

我使用jQuery的插件timepickerhttp ://trentrichardson.com/examples/timepicker/

于 2013-08-09T15:26:33.423 回答
0

有一个将处理屏蔽的屏蔽输入 JQuery 插件。见http://digitalbush.com/projects/masked-input-plugin/

$("#YourTextBox").mask("99:99");

屏蔽将仅验证数字输入。您仍然需要 javascript 代码通过检查 hh 和 mm 是否介于 00 和 60 之间来验证数字

于 2013-08-09T15:27:19.057 回答
0

你可能想看看这个

http://digitalbush.com/projects/masked-input-plugin/

或者您需要自己构建它,请参阅: https ://snipt.net/GerryEng/jquery-making-textfield-only-accept-numeric-values/

你必须添加:强硬和文本长度修复/数字验证 - 我希望你明白这一点

问候简

于 2013-08-09T15:28:35.020 回答