我正在尝试在失去焦点时验证输入字段,并在验证失败时重新聚焦字段。但我似乎无法让这个领域重新聚焦。我在http://jsbin.com/ahepo/edit写了一个测试用例。它在Firefox 3.6.2和IE 8中失败,但在Chrome 4.1中工作。
答案 0 :(得分:1)
我唯一想到的是:
$('#field1').focusout(function() {
var $this = $(this);
$this.val('not valid!');
window.setTimeout(function(){
$this.focus();
},1);
});
答案 1 :(得分:0)
将调用.focus()
置于超时处理程序中。这样,在“焦点”完成后发生。
setTimeout(function() { $this.focus(); }, 1);