2010-06-17 2 views
1

У меня есть форма, которую я автоматически фокусирую при запуске страницы с помощью jquery. У меня также есть обработчики событий изменений на месте, когда изменяется вход.IE7 и IE8 событие изменения не выбрасывается для ввода текста

Если я изменил значение первого поля, которое было автофокусировано, а затем переместиться в следующее поле, обработчик события изменения не срабатывает. Если я удалю автофокусировку и просто сфокусируюсь вручную, а затем измените его, а затем перейдите в следующее поле, произойдет событие изменения.

Это происходит только в IE. Он отлично работает на firefox и chrome.

Кто-нибудь испытывает это раньше?

КОД:

$('#firstinput').focus(); 

$('input').live('change', function(){ 
    alert("changeevent!"); 
}); 

UPDATE: Это должно быть что-то более сложное, чем просто это, потому что я испытал это сам по себе, и он работал отлично. На реальной странице у меня есть плагин validator, который, вероятно, каким-то образом вмешивается. Когда я использовал плагин validator на тестовой странице, у нее была та же проблема.

UPDATE2: Я сузил строку кода, которая вызывает это. Add

$('#firstinput').bind('change', function() {}); 

и IE проявляет плохое поведение.

+0

Можете ли вы показать какой-то код? Как работает автофокус? –

ответ

1

Я проверил ваш код на IE7 и IE8 и отлично работает, может быть, есть что-то еще ...

Что делать, если вместо

$('#firstinput').focus(); 

вы используете

$('#firstinput').click(); 
+0

посмотрите, можете ли вы воспроизвести его, добавив код, упомянутый в update2 – Kyle