正则如何限制input掩码文本

想用input输入时间(格式00:00),如果填写8:45,前边补0,中间自动填充:,现在是后边多个:前边不自动填充0

<div class="layui-inline">
                <label class="layui-form-label">时间</label>
                <div class="layui-input-inline layui-form">
                    <input type="text" maxlength="5" onkeyup="regVal(event)"  autocomplete="off" class="layui-input">
                </div>
            </div>

function regVal(ev) {
        if (ev.altKey || ev.ctrlKey || ev.shiftKey || ev.metaKey ) return;
        var str = ev.target.value.replace(/[^\d]/g,'').replace(/(.{2,2})/g, '$1:');
        if (str === ev.target.value) return;
        ev.target.value = str;
    }

图片描述

阅读 1.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题