我在文本框中有一个输入字段,如下所示:
<div id="box_password2" style="display:none;">
<span style="float:left;margin: 10px 0px 0px 20px;">Verify password:</span>
<input type="password" id="field_password2" class="auto" maxlength="10" style="margin: 10px 0px 0px 10px; width: 80px; float: left;" value="">
</div>
我希望取消隐藏框(和包含的输入字段)并将焦点设置到输入字段,如下所示:
$('#box_password2').fadeIn("fast", function() {
$("#field_password2").focus();
console.log('Active element: '+$(":focus").attr('id'));
});
但这只是行不通。焦点在某个不可见的地方,我的控制台将活动元素显示为未定义。为什么这不起作用?
更新
我添加了一个 onfocus 警报和 field_password2 DOES 获得焦点,但不知何故将其丢失到 NEXT 字段。如果重要的话,上面的 javascript 在另一个输入字段的 onchange 事件中。在我的代码更改焦点之后,onchange 处理程序是否正在更改焦点?有什么办法可以防止吗?