$("#pincode").blur(function() {
var pincode = $("#pincode").val().trim();
var pattern = /^[0-9]{6}$/;
if (pincode != "" && !IsPatternFormate(pincode, pattern)) {
$("#pincode").addClass('invalidValidation');
document.getElementById('pincode')
.setCustomValidity('please enter data in proper formate');
}
});
var IsPatternFormate = function (value, pattern) {
var match = pattern.test($(value));
console.log(match);
}
我不知道为什么,匹配总是给我返回假值。正则表达式测试alwayes返回false
你为什么要通过 “价值”'$()'?这绝对没有意义;它应该是'pattern.test(value);'并且你需要函数的'return'。 – Pointy
当你调用'$(something)'得到类似jQuery数组的对象时,你的函数什么也没有返回并且undefined是虚假的 –
,所以当你将对象传递给需要字符串参数的'test'函数时,确实会传递类似''[对象对象]''所以它总是返回_false_为你的模式 – Grundy