时间日志的javascript/jquery验证(5小时3米)
javascript/ jquery validation for time log(5h 3m)
我有一个文本类型的输入。如何验证,以便用户只能输入这样的值(5小时30米),这是为了记录时间(在一项任务上花费了多少时间)。我应该使用任何正则表达式吗?
我不知道如何一次处理所有情况,但您总是可以针对几个rexexp进行测试,看看是否匹配。
-
小时和分钟:
/^'d{1,2}h'd{1,2}m$/i
-
仅限小时:
/^'d{1,2}h$/i
-
仅分钟:
/^'d{1,2}m$/i
-
分钟和小时:
/^'d{1,2}m'd{1,2}h$/i
var pattern1 = /^'d{1,2}h'd{1,2}m$/i;
var pattern2 = /^'d{1,2}h$/i;
var pattern3 = /^'d{1,2}m$/i;
var pattern4 = /^'d{1,2}m'd{1,2}h$/i;
var reg1 = RegExp(pattern1);
var reg2 = RegExp(pattern2);
var reg3 = RegExp(pattern3);
var reg4 = RegExp(pattern4);
var test = function() {
var toTest = document.getElementById('i').value;
if (
!reg1.test(toTest) &&
!reg2.test(toTest) &&
!reg3.test(toTest) &&
!reg4.test(toTest)
) alert('Not OK');
else alert('OK');
}
<input id="i" type="text" value="" />
<input type="button" value="Test" onclick="test();" />
相关文章:
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- 调整窗口大小时,可拖动的对象会出现在容器外部
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 我如何才能让CasperJS和PhantomJS在约塞米蒂玩得很好
- IE在将字符串转换为日期时从日期中删除4小时
- 调整屏幕大小时更改属性值
- 将直流图表库中的折线图缩放限制为小时
- 为什么要做新的.Date()与new相差1小时.日期().到ISOString()
- 让谷歌数据图表有一个24小时x轴
- Jqgrid 24小时格式的日期列
- 如果在过去两个小时内没有记录,返回0,javascript逻辑
- 解析云代码作业:删除在数据库中已经存在一个小时的行
- JavaScript:如何每整小时做一些事情
- 如何在浏览器窗口变大/变小时捕捉元素的宽度
- javascript日期减去小时-错误
- 每小时倒计时一次,但以30分钟为单位
- 24小时输入时间:mm格式跨浏览器
- 时间日志的javascript/jquery验证(5小时3米)
- 格式化日期,只显示最小的相对时间段,如50秒,1米,2小时,3d等