问题描述
我有以下用于jQuery Mask插件的程序:
applymap
当我清空SSN文本字段并输入测试模式时,例如
33岁
33 =
33(
33+
或
33G
最后一个字符变为减号,
33--
成为输出。
(请注意,最终输出中有两个负号)
有什么办法可以使jQuery Mask插件停止将测试模式的最后一个字符更改为“-”?
注意:
- 我正在使用https://plugins.jquery.com/mask/ 上的jQuery Mask插件v1.7.7
- 请不要讲授处理PII和SSN数据的最佳安全做法,因为我仅以SSN为例。
解决方法
尝试使您的口罩使用#而不是9
$(“#ssnId”)。mask(“ ###-##-####”);
还要在输入标签中添加maxlength:
<input type="text" id="ssnId" name="ssn" maxlength="11" />
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-mask-plugin@1.14.16/dist/jquery.mask.min.js"></script>
<script>
// https://learn.jquery.com/using-jquery-core/document-ready/
$(document).ready(
function () {
$("#ssnId").mask("###-##-####");
}
);
</script>
</head>
<body>
SSN:<br />
<input type="text" id="ssnId" name="ssn" maxlength="11" />
</body>
</html>