把重点放在一个文本框的onchange事件
-
21-09-2019 - |
题
我想获得它,这样,当某个值被放入一个文本框,焦点将停留在文本框(和警报将在生产中所示)。我试图让这个在Firefox 3.5.7没有运气的工作。
我怎样才能使它所以当一个文本框是onchange
一定值时,它会保持集中/重新关注文本框?
现场实例是在 http://jsbin.com/ipina
<body>
Enter your name: <input type="text" name="fname" id="fname" onchange="
if(this.value=='foo'){
this.select();
this.focus();
}
" />
</body>
另外,我没有得到执行此代码的错误控制台任何JavaScript错误或警告。
解决方案 2
根据的Javascript平变化在IE和Firefox不同的我需要onchange事件发生之后设置的焦点,所以我有这样的事情落得:
Enter your name: <input type="text" name="fname" id="fname" onblur="
if(this.value=='foo'){
alert('bah');
setTimeout('document.getElementById(\'fname\').focus();document.getElementById(\'fname\').select();',0);
}
" />
和还我必须抓住它时,焦点消失,不一定当文本改变了,所以我只好用的,而不是平变化的onblur。
其他提示
当的onchange
事件被触发时,用户集中在文本框。
也许你可能想使用blur
事件重新专注于文本,如果值是“富”。
如果您需要即时结果,你应该使用onkeyup
。
<body>
Enter your name: <input type="text" name="fname" id="fname" onkeyup="
if(this.value=='foo'){
this.select();
this.focus();
}
" />
</body>
不隶属于 StackOverflow