kentuck1213
@kentuck1213

Как сделать что событие change работало как надо?

$(document).ready(function(){
    var button = $('button.btn-right-minlabour');
    var firstInput = $('input#RefMahala_name_<?=Yii::app()->language;?>');
    firstInput.change(function(){
        button.attr('disabled', false);
    });
})

Скрин. На скрине видно как событие change, по идее, уже произошло, но если кликнуть мышой в любое место, то тогда change сработает.
Как сделать чтобы событие change работало корректно?
  • Вопрос задан
  • 202 просмотра
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
change работает как надо =)
Просто вам нужно другое событие - input (propertychange для старых осликов)

firstInput.on('input propertychange', function(){
        button.attr('disabled', false);
});


UPD
Там ниже keydown советуют. В принципе сработает, но! keydown реагирует только на клавиатуру, input - на любое изменение в поле (клавиатурный ввод, копипаста мышкой, программное изменение).
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Попробуйте проверять значение инпута и в зависимости от него уже обрабатывать событие или нет
Ответ написан
Комментировать
Попробуй реализовать с помощью событий keydown, keyup, keypress. С помощью chagne не получится ))
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы