@yellow_pus

Ограниченное количество слов в input?

Как разрешить вводить в input определенное количество слов, где "слов", означает наличие запятой, после введенных букв
  • Вопрос задан
  • 103 просмотра
Пригласить эксперта
Ответы на вопрос 1
ProgrammerForever
@ProgrammerForever
Учитель, автоэлектрик, программист, музыкант
let elem = document.getElementsByName('body')[0]; // ищем по имени или любым другим способом
	if (elem){
		elem.oninput = ()=>{
			const wordsCount = 5; // количество "слов"
			const delimiter = ","; // разделитель "слов"
			const attributeName = "oldValue"; // атрибут для хранения старого значения
						
			if (elem.value.split(delimiter).length<=(wordsCount-1)){
				console.log("save good value");
				elem.setAttribute(attributeName, elem.value);
			}else{
				console.log("wrong input");
				let oldValue = elem.getAttribute(attributeName);
				if (oldValue!==undefined){
					console.log("return old value");
					elem.value = oldValue;
				}else{
					console.log("return default value");
					elem.value = "";
					elem.setAttribute(attributeName, elem.value);					
				};				
			};
		};
	};
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы