Валидация regExp

210
27 апреля 2019, 20:20

Просьба помочь сделать валидацию поиска. что у меня : символы которые я хочу отсеиваются,НО если первоначально ввести пробел - то выскакивает ошибка.Что я хочу получить : 2-3 слова в поиске и чтобы не ругался на пробел.либо подсказку как это сделать?

[var input = document.getElementById("input");
var bab_number = document.querySelector(".header_form_search_error");
var pattern = /^\s*[a-z0-9-а-яё]+(?:\s+[a-z0-9-а-яё]+){1,2}\s*$/i;
var value;
input.addEventListener("input", search_error);
function search_error(value) {
  var newValye = this.value;
  if (pattern.test(newValye)) {
    bab_number.style.display = "none";
  } else {
    bab_number.style.display = "block";
  }
}

] ссылка на codepen

Answer 1

Так подходит?

var input = document.getElementById("input"); 
var pattern = /^\s{0,1}([a-z0-9-а-яё]{1,}\s*){0,3}$/i; 
 
input.addEventListener("input", search_error); 
 
function search_error(event) { 
  var newValye = event.target.value; 
  console.log(pattern.test(newValye)) 
}
<input type="text"  id="input" >

READ ALSO
Как удалить localStorage в JSON?

Как удалить localStorage в JSON?

Сохраняю переменную

161
Создание JS плагина

Создание JS плагина

Скажите пожалуйста

158
Получить предыдущее значение атрибута data- у выбранной ранее ссылки

Получить предыдущее значение атрибута data- у выбранной ранее ссылки

Пытаюсь получить предыдущее значение data-type у выбранной ранее ссылки (selected) при клике по новой

168
Не срабатывает событие click второй раз

Не срабатывает событие click второй раз

Не срабатывает второй раз событие по нажатию на активный элементВ чем может быть причина, подскажите, пожалуйста?

156