我有一个表单,我在jquery页面启动时自动关注。每当输入发生变化时,我也会更改事件处理程序。
如果我更改自动对焦的第一个字段的值,然后移动到下一个字段,则不会触发更改事件处理程序。如果我删除了自动对焦,只需手动对焦,然后更改它然后移动到下一个字段,则更改事件会触发。
这只发生在IE上。它在firefox和chrome上运行良好。
以前有人经历过这个吗?
CODE:
$('#firstinput').focus();
$('input').live('change', function (){
alert("changeevent!");
});
更新:它必须是比这更复杂的东西,因为我自己测试了它并且它工作得很好。在真实的页面上,我有一个验证器插件,可能会以某种方式干扰。当我在测试页面上使用验证器插件时,它也有同样的问题。
UPDATE2: 我缩小了导致这种情况的代码行。添加
$('#firstinput').bind('change', function() {});
和IE表现出不良行为。
答案 0 :(得分:1)
我在IE7和IE8上测试了你的代码并且工作得很好,也许还有别的......
如果不是
,该怎么办?$('#firstinput').focus();
你使用
$('#firstinput').click();