![](/img/trans.png)
[英]jQuery / Javascript pass focus to next element while tabbing through page
[英]JavaScript will not pass focus to element
我在JavaScript中有以下函數if
語句的每個部分都正確執行,除了將焦點返回給調用函數的元素。 它在IE或Fire Fox中不起作用,瀏覽器都沒有給我一個錯誤。 它對我來說是正確的... 為什么它不起作用?
function check(x){
//doing some stuff
if (uc_check == false){
window.alert('Houston, we have a problem.');
document.getElementById(x).value = '';
document.getElementById(x).focus(); //this line is not working
}
}
PS我從這樣的表單輸入調用此函數:
onchange="check(this.id)"
這里的問題是當onChange函數完成時,它將焦點設置為下一個元素。 因此,您在該函數中設置的任何焦點只會在onChange結束后消失。
你可以通過多種方式解決這個問題。 可能最容易使用超時。
將焦點線更改為以下內容:
var el = document.getElementById(x);
window.setTimeout(function(){el.focus();}, 100);
您已經有了對元素( this
)的引用,因此您不需要傳遞id:
<input onchange="check(this);">
和JS:
function check(el) {
if (uc_check == false) {
el.value = '';
el.focus();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.