我正在尝试添加PAN编号验证以禁止使用特殊字符,但我的代码如下所示无效:
if (attributes.isOwnProfile &&
attributes.totalExperience > 0 &&
$.trim(attributes.panNumber) == "") {
errors.push({
key: "panNo",
message: "Required"
});
} else if ($.trim(attributes.panNumber) != "" &&
attributes.panNumber.length !== 10) {
errors.push({
key: "panNo",
message: "Not a valid PAN No"
});
} else if (!(/[^a-zA-Z0-9]/).test(attributes.panNumber)) {
errors.push({
key: "panNo",
message: "Not a valid PAN No"
});
}
答案 0 :(得分:2)
您的正则表达式正在检查是否存在任何特殊字符,如果存在,则返回true,您使用!
运算符进行否定,因此当存在特殊字符时,不满足条件。
您应该从if条件
中删除!
else if((/[^a-zA-Z0-9]/).test(attributes.panNumber)) {
errors.push({
key: "panNo",
message: "Not a valid PAN No"
});
}