我試圖測試是否正則表達式是整數或N/A,但是我不能讓我的功能正確執行。它總是顯示錯誤信息。正確測試整數或N/A正則表達式
function WholeNumberWithNA(field1) {
$("input:text[id*='" + field1 + "']").keyup(function() {
var input = $(this);
var re = /^[0-9]{1,10}\|N\/A\|n\/a|N\/a|n\/A$/;
var errormsg = "Whole Number or N/A only";
var is_email = re.test(input.val());
if (is_email) { input.removeClass("invalid").addClass("valid"); myFunction(event, errormsg); }
else { input.removeClass("valid").addClass("invalid"); myFunction(event, errormsg); }
});
}
function myFunction(event, errormsg) {
var element = $(event.currentTarget);
var valid = element.hasClass("valid");
var temp = event.currentTarget.parentElement;
var error_element = $(".ValidatorIndicator", event.currentTarget.parentElement);
if (!valid) { error_element.text(errormsg); error_free = false; }
else { error_element.text(""); }
}
我想我意識到我的錯誤。我擺脫了「|」前面的倒退斜線它的工作。正確表達:/^[0-9] {1,10} | N/A | N/A | N/A | N/A $/
發佈一些有效和無效的字符串的示例。 –
使用'i'修飾符來區分不區分大小寫的匹配,而不是列出所有不同的組合。 – Barmar
@Barmar可以顯示一個例子,請 –