无法使用jQuery将焦点放在特定字段上
Unable to give focus to specific fields with jQuery
我正在用jQuery验证一个简单的表单:
$('input:text').blur(function(){
if ($(this).val() == "") {
$("#" + $(this).attr("name") + "_error").show();
$(this).css("border", "2px solid red");
$(this).focus();
return false;
}
});
$(this).focus();
没有保持对当前字段的关注-这是不应该被允许的原因,还是我错过了什么?
我一直在摆弄代码;当我试图通过选择它的id来聚焦一个特定的字段时,焦点永远不会停留在blur
事件被调用的字段上;例如,如果我有5个字段,id field1
, field2
,…field5
,并具有以下代码:
$('input:text').blur(function(){
if ($(this).val() == "") {
$(this).css("border", "2px solid red");
$("#field4").focus();
return false;
}
});
如果我把焦点移开字段1,当它是空的使用tab键,然后焦点是切换到#field4
,然而,如果我tab off字段4,当它是空的,焦点不留在字段4,但切换到字段5。这是预期的/记录的行为吗?
试试;
<>之前setTimeout($(this).focus(), 500);之前希望它对你有用
如果我没有弄错的话,您可以在输入真正模糊之前获得事件。
结果是:
- 用户点击出输入
- 方法被调用
- 方法将焦点赋给输入 方法返回
- 浏览器将模糊事件传播给"自身"并移除焦点
相关文章:
- 在IE9中的输入字段中输入焦点最近按钮
- 将焦点设置在下拉切换的角度 js 上的第一个输入字段上
- 渲染后如何在输入字段上设置焦点
- 如何在动态树标题中的输入字段上设置焦点
- 为什么欧芹不验证每个字段(例如失去焦点),而我调用$('#myForm').validate();
- AngularJS,如何使UI依赖于哪个字段具有焦点
- 字段选择所有文本,然后在焦点上取消选择它
- 将焦点和光标设置为文本输入字段/字符串 w. Jquery 的末尾
- 当所有表单具有相同的名称和 id 时,选择焦点字段的表单
- 无法阻止输入字段在安卓中获得焦点
- 更改焦点后,输入字段中的文本将消失
- Ace 编辑器将字段焦点放在 Tab 键上
- 将标签设置为输入字段焦点的完全不透明度
- Angularjs输入字段焦点事件
- Cordova防止webview拖拽字段焦点
- 字段焦点在firefox中不工作,setTimeout(function(){id.focus();},0);
- Android / IOS浏览器.防止默认键盘在字段焦点上显示(Javascript)
- Android浏览器键盘在最后一个输入字段焦点打开/关闭
- JQuery工具提示仅在输入字段焦点处可见
- Android WebView -使用Javascript设置HTML字段焦点