我正在使用 jQuery 的 MaskedInput 插件来创建一个包含两个可选部分的输入掩码。
a?a-a?a
其中第二个字符是可选的。
但是如果我输入a-a
甚至第二个字符被标记为可选,MaskedInput 总是将其视为无效输入。
我正在使用 jQuery 的 MaskedInput 插件来创建一个包含两个可选部分的输入掩码。
a?a-a?a
其中第二个字符是可选的。
但是如果我输入a-a
甚至第二个字符被标记为可选,MaskedInput 总是将其视为无效输入。
如果您仔细阅读文档......我只是这样做,因为我从未使用过这个插件,它清楚地表明http://digitalbush.com/projects/masked-input-plugin/:
你可以让你的面具的一部分是可选的。“?”之后列出的任何内容 掩码内被认为是可选的用户输入。常见的例子是电话号码 + 可选分机。
所以你不能做你想做的事吗?但你可以使用这个:
如果预定义的占位符不满足您的要求,您可以随时添加自己的占位符。例如,也许您需要一个只允许十六进制字符的掩码。您可以为占位符添加自己的定义,例如“h”,如下所示: $.mask.definitions['h'] = "[A-Fa-f0-9]"; 然后你可以用它来掩盖像css颜色这样的东西。
所以我们可以为 alpha + space 定义一个掩码
$.mask.definitions['h'] = "[A-Za-z ]"
$('#blah').mask('ah-ah');
这段代码的问题在于它不是你想要的。它将接受“aa-aa”和“a -a”,但不接受“aa”或“a -a”
我认为对于你需要的东西,你可能想尝试自己实现它而不是使用这个插件。