当我做onchange事件时,它进入该函数的验证,但焦点不是我正在使用 document.getElementById('controlid').focus();
我使用的是Mozilla Firefox和谷歌浏览器,两者都无效.我不想要任何IE浏览器.任何人都可以告诉我我的原因是什么.
提前致谢
这是代码:
var mnumber = document.getElementById('mobileno').value;
if(mnumber.length >=10) {
alert("Mobile Number Should be in 10 digits only");
document.getElementById('mobileno').value = "";
document.getElementById('mobileno').focus();
return false;
}
Run Code Online (Sandbox Code Playgroud)
And*_*y E 88
尝试使用计时器:
var mnumber = document.getElementById('mobileno').value;
if (mnumber.length >=10)
{
alert("Mobile Number Should be in 10 digits only");
document.getElementById('mobileno').value = "";
window.setTimeout(function ()
{
document.getElementById('mobileno').focus();
}, 0);
return false;
}
Run Code Online (Sandbox Code Playgroud)
当线程空闲时,将运行计数为0的计时器.如果这没有帮助,请尝试在onblur事件中使用代码(使用计时器).
小智 47
如果focus()不工作就要提两件事:
这种方式适用于Firefox和Chrome,无需任何操作setTimeOut().
小智 28
window.setTimeout(function () {
document.getElementById('mobileno').focus();
}, 0);
Run Code Online (Sandbox Code Playgroud)
这对我也有用.Firefox会设置我的元素的值,但不会关注它.
aex*_*exl 12
我的情况有点不同.我正在尝试focus()从浏览器开发人员控制台中输入.原来它以某种方式干扰了输入,一旦我最小化了控制台,一切都按预期工作.我知道这不是一个程序化的解决方案,但如果有人像我一样在搜索引擎上发现了这个问题,那么这些信息可能会有所帮助.
小智 11
并非所有元素都是可聚焦的,但默认情况下,有一个tabindex属性可以解决这个问题.
将tabindex =分配给元素时:
它变得可以集中精力.用户可以使用Tab键从具有较小正tabindex的元素移动到下一个元素.例外是一个特殊值tabindex ="0"表示该元素将始终为最后一个.tabindex = -1表示元素变为可聚焦,但tab键将始终跳过它.只有focus()方法才有效
| 归档时间: |
|
| 查看次数: |
138360 次 |
| 最近记录: |