Как вызвать событие onChange в HTML, даже если содержимое изменяется в js? - PullRequest
0 голосов
/ 18 октября 2011

Я знаю, что событие HTML onChange запускается только при размытом элементе.

Но есть ли способ запустить сценарий, когда изменяется содержимое текстового поля?Даже если это изменилось в javascript?

В моей форме есть текстовое поле для выбора даты.У меня также есть кнопка с календарем для выбора даты.Этот календарь записывается в текстовое поле, и я хочу что-то сделать при изменении даты.

Я не могу изменить javascript календаря.

Я также хочу совместимость со всеми основными браузерами (IE7-9, Firefox, Chrome, Safari, Opera, ...).

Ответы [ 2 ]

2 голосов
/ 18 октября 2011

Вы ищете мутационные события (например, DomAttrModified).

См. Обнаружение изменений содержимого элемента с помощью jQuery , если это поможет вам как стартер.

0 голосов
/ 20 октября 2011

Я нашел ответ на свой вопрос, который, возможно, не самый лучший, но все еще работает.Он использует таймеры JavaScript.

function watchElement()
{
    var newVal = document.FormName.TextboxName.value;
    if(oldVal != newVal) {FunctionToCall();}
    oldVal = newVal;
}

var oldVal = document.FormName.TextboxName.value;
setInterval(watchElement, 500);

Я знаю, что это не лучший код в мире, но он работает для всех основных браузеров.

...