Задать вопрос

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

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

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

как это решить?
  • Вопрос задан
  • 248 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 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. Попробуй его.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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