2013-07-19 28 views
0

我有一個網站,將從條形碼閱讀器獲得輸入值。我需要保持輸入字段的焦點,直到它獲得值。我使用<input onBlur="this.focus()">和一些使用函數的變體,但不起作用。我不喜歡使用jQuery,但它不是強制性的。保持專注於輸入,直到獲得價值

回答

1

你想做的事情在你的特定用例中可能會非常好,但如果它不是真的,絕對必要的,請不要這樣做。如果用戶無法控制焦點,這是非常煩人的。話雖如此,你可以這樣做:

<input onBlur="if (this.value == '') { var field = this; setTimeout(function() { field.focus(); }, 0); }" type="text"> 

你可能應該把它放在一個單獨的函數中。

+0

非常感謝西蒙。它理想地工作。不要擔心,我也是一個用戶,我知道它有多惱人...... –

+0

我很高興聽到那個:)我只是想對未來的讀者提出一個「警告」,不要這樣做。那裏已經有足夠的不好的做法。 –