Показать сообщение отдельно
  #1 (permalink)  
Старый 14.09.2017, 21:57
Интересующийся
Отправить личное сообщение для plug-ugly Посмотреть профиль Найти все сообщения от plug-ugly
 
Регистрация: 21.08.2017
Сообщений: 27

Что за aтрибут такой date-length?
Всем здравствуйте!
Есть такая вот задачка и прилагаю сразу решение, которое было к этой задаче.

"Даны инпуты. Сделайте так, чтобы все инпуты по потери фокуса проверяли свое содержимое на правильное количество символов.
Сколько символов должно быть в инпуте, указывается в атрибуте data-length.
Если вбито правильное количество, то граница инпута становится зеленой, если неправильное - красной."

input type="text" data-length="4">
<input type="text" data-length="7">
<input type="text" data-length="9">

var elems = document.getElementsByTagName('input');
for (var i = 0; i < elems.length; i++) {
	elems[i].addEventListener('blur', func);
}

function func() {
	var correctLength = this.dataset.length; //правильное количество
	var inputDataLength = this.value.length; //вбитое в инпут количество
	if(correctLength == inputDataLength){
		this.style.borderColor = 'green';
	} else {
		this.style.borderColor = 'red';
	}
}


Все бы ничего, в голове уже сразу созрело решение, причем оно было практически аналогичным с тем, что я вам написал.
Но... не работает!

Атрибут data-length не распознается, погуглил - тоже глухо. С dataset такая же история.

В чем дело? Кто может подсказать - подскажите, пожалуйста!
Что ж за атрибуты такие data-length и dataset?
Ответить с цитированием