massef
@massef

В чем причина такого поведения?

Почему если установить любое значение и потом попытаться стереть клавишей Backspace, то появляется число 50 и при этом не стирается первая цифра?
codepen.io/anon/pen/aBGoej
  • Вопрос задан
  • 219 просмотров
Решения вопроса 1
EreminD
@EreminD
Кое-что умею
1. Первая цифра стирается, получается у inputa с типом number пустое значение
2. У инпута с типом range пустого значения быть не может - выставляется значение дефолтовое

Обрабатывать можно так:
$amount.on('input', function() {
  if(this.value == "") this.value = 0; //например, вот так. Если значение пустое, ставить 0
  $rangeslider.val(this.value).change();
});


История какая: подразумевается, что пользователь берет этот круглый ползунок и двигает, куда ему надо. Ползунок занимает положение в соответствии с текущим значением. Нет значения - нет положения. Т.е. ползунок отображаться не будет. А что тогда остается двигать пользователю? Ничего.
Это еще не все. Это вы - молодец - на старте указываете значение. А если разработчик не указывает? забыл или не нужно? Можно тогда ставить автоматом. Какое? Самое левое? А почему? Самое правое? А почему? Посередине? Звучит демократично.
В общем, это - не дефект, а защита от дурака
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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