我有屏蔽 zip 字段的要求,以便它允许经典的 5 位数 zip (XXXXX) 或 5 + 4 格式 (XXXXX-XXXX)。
我可以这样:
$('#myZipField').mask("?99999-9999");
但复杂性来自这样一个事实,即如果用户只输入 5 位数字,则不应显示破折号。
这是迄今为止我想出的最好的方法-我可以将其扩展为在他们插入第 6 个数字时自动插入破折号,但这样做的问题是删除时的有趣行为(我可以阻止他们删除破折号,但它会修补补丁等等,它变成了一场噩梦):
$.mask.definitions['~']='[-]';
$("#myZipField").mask("?99999~9999", {placeholder:""});
是否有任何开箱即用的方法可以做到这一点,还是我必须自己动手?