Почему не срабатывает обработка change?

Здравствуйте,
есть сайт, на нем поля input при вводе с клавиатуры значений, сайт их подхватывает, но если же ввести в поля данные через скрипт - он их не видит, хотя визуально значения заполняются

$('.selector').val(30).change();
это ничего не дает
$('.selector').change(function () {
alert("change: " + $(this).val());
});
$('.selector').val(30).change();
срабатывает

как это решить?
  • Вопрос задан
  • 221 просмотр
Пригласить эксперта
Ответы на вопрос 3
KickeRocK
@KickeRocK
FrontFinish
Что решить?
Тут почитайте
Note: Changing the value of an input element using JavaScript, using .val() for example, won't fire the event.

Триггерите .change() если хотите подвязать к этому событию, не проще прописать функцию сразу(в момент изменения значения, в скрипте)?
Ответ написан
v3shin
@v3shin
Веб-шаман
В первом случае $('.selector').val(30).change(); вызывает обработчик события change. Но обработчика пока нет.

А во втором случае вы добавляете обработчик:
$('.selector').change(function () {
    alert("change: " + $(this).val());
});
Ответ написан
@alekssamos
Программист любитель
Есть ещё событие "input". То есть как onchange, только oninput. Попробуй его.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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