使用jquery-mask-plugin
我想屏蔽输入以仅接受合理的 MM/YY
$('#expDate').mask("99/99");
有效,但它允许55/66
这是不可接受的月份。
我怎样才能做到,所以面具的第一部分是<= 12
使用jquery-mask-plugin
我想屏蔽输入以仅接受合理的 MM/YY
$('#expDate').mask("99/99");
有效,但它允许55/66
这是不可接受的月份。
我怎样才能做到,所以面具的第一部分是<= 12
你不能只使用 jquery-mask 插件来做到这一点。正如您所指出的,它仅屏蔽了某些类型的输入,例如数字(通常)、字母、符号等。它不执行数据验证(这是您所要求的。
您可以编写一个简单的 jQuery 函数来运行 onblur 等来拒绝无效组合:
$('#expDate').blur(function() {
let val = $(this).val();
if (val.indexOf('/') > 0)
{
let first = val.split('/')[0];
if (first > 12) $(this).val('');
}
});
或者,您可以使用出色的 jQuery Validate 插件: https ://jqueryvalidation.org/
需要明确的是,除了基本的输入屏蔽之外,您还需要数据验证。