Как вызвать функцию JS при изменении текстового свойства текстового поля? [Дубликат]

на моем ubuntu 14.04, apache 2.4, php 5.5.9 install, я попробовал с sample.php on / var / www / html (root по умолчанию), и он работал нормально. Таким образом, проблема была в моей конфигурации виртуальных серверов. Решение заключалось в том, чтобы включить в директорию def, содержащую .php, следующую строку:

    php_admin_flag engine on
28
задан gespinha 15 November 2014 в 14:26
поделиться

3 ответа

Это для событий .

HTMLInputElementObject.addEventListener('input', function (evt) {
    something(this.value);
});
41
ответ дан Quentin 20 August 2018 в 19:27
поделиться
  • 1
    Я пробовал это, но по какой-то причине это не сработало. Я обновил свой вопрос, чтобы сделать его более понятным. – gespinha 15 November 2014 в 14:28
  • 2
    @GEspinha - Это все еще способ сделать это. Что говорит консоль ошибок JavaScript? Как вы меняете стоимость? – Quentin 15 November 2014 в 14:35
  • 3
    Не работает, если входное значение изменено javascript – ImShogun 24 May 2017 в 12:37
  • 4
    Разве это не должно быть addEventListener('change', ...? Не должен ли первый аргумент addEventListener быть именем события? – Chris Jaynes 7 October 2017 в 03:22
  • 5
    @ChrisJaynes - Нет, это не должно быть изменением. Да, это должно быть название события. input - название события. developer.mozilla.org/en-US/docs/Web/Events/input – Quentin 7 October 2017 в 14:37

Отмеченный ответ точно прав, но ответ может быть:

HTMLInputElementObject.oninput = () => {
   console.log(this); // Do something
}
0
ответ дан AmerllicA 20 August 2018 в 19:27
поделиться
  • 1
    Я не знаю, почему кто-то проголосовал за мой ответ, но, безусловно, это правильно и работает потрясающе. Я проверяю его дважды. оно работает – AmerllicA 4 July 2018 в 15:47

В качестве базового примера ...

HTML:

<input type="text" name="Thing" value="" />

Сценарий:

/* event listener */
document.getElementsByName("Thing")[0].addEventListener('change', doThing);

/* function */
function doThing(){
   alert('Horray! Someone wrote "' + this.value + '"!');
}

Вот скрипка: http: //jsfiddle.net/Niffler/514gg4tk/

15
ответ дан Niffler 20 August 2018 в 19:27
поделиться
  • 1
    Я не могу изменить HTML. Я обновил свой вопрос, чтобы сделать его более понятным. – gespinha 15 November 2014 в 14:28
  • 2
    Извините, должно быть, пропустили эту часть. Обновил мой ответ. – Niffler 15 November 2014 в 15:04
  • 3
    Не работает. Используйте событие input. – Chris 29 July 2016 в 16:50
  • 4
    Не будет работать, если входной контент будет изменен с помощью javascript. ни с событием «вход», ни «изменение». – ImShogun 24 May 2017 в 12:37
Другие вопросы по тегам:

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