У меня есть текстовое поле ввода, которое запускает функцию js для события keyup для сопоставления с допустимой строкой (совпадение с шаблоном имени домена, здесь было найдено регулярное выражение).
Я написал оператор if, чтобы проверить, является ли ввод допустимым шаблоном, а затем длиной более 3 символов.
Очевидно, мои ifs не работают так, как я этого хотел.Когда на входе 3 или более символов, это нормально.
Но если на входе меньше 3 символов, он не сможет выполнить регулярное выражение шаблона.
Пример: если в поле ввода есть «dd» (без кавычек), функция сообщит, что у меня неправильный шаблон, когда ДОЛЖНА предупредить, что длина ввода меньше 3 символов.
Из включенного оператора оповещения во входном значении нет лишних пробелов или символов.
<input id="quick" type="text" size="20" onKeyUp="test()"></input>
функциональный тест -
function test(){
var liveword = document.getElementById("quick").value;
var valid = /^[a-zA-Z0-9][a-zA-Z0-9\-\_]+[a-zA-Z0-9]$/;
alert("xxx"+liveword+"xxx");
if (liveword.match(valid))
{
if (liveword.length < 3)
{
alert ('word less than 3');
}
else {
alert ('word more than 3');
}
}//outside if
else {
alert('enter correct pattern');
}
} //close