我正在制作出勤系统,需要条形码阅读器才能参加。在页面上,我有一个input
框,要求条形码阅读器扫描学生ID。但是当一次出席后页面重新加载时,我必须再次单击输入字段,然后通过条形码阅读器进行扫描。有没有一种方法,当页面加载时,输入字段会被自动点击,以便我只扫描学生ID?
我尝试过以下内容,但不起作用:
<body onload="myFunction()" >
<form action="daily_attendance2_b.php" method="get">
SID : <input type="number" id="box" name="roll_no"min=10000000 max=19999999 placeholder="Valid ID" >
<input type="submit">
</form>
<script>
function myFunction() {
document.getElementById("box").click();
}
</script>
</body>
答案 0 :(得分:4)
使用focus()
方法:
<script>
function myFunction() {
document.getElementById("box").focus();
}
</script>
另请注意,将此放在函数中是多余的,因为您已将代码放在</body>
之前,因此您可以删除onload
属性并执行{中的代码行{1}}阻止。
答案 1 :(得分:0)
如果浏览器支持自动对焦属性(IE10 +,FF4 +,Chrome 5+),那么您可以使输入自动聚焦于页面加载:
<input type="number" id="box" name="roll_no"min=10000000 max=19999999 placeholder="Valid ID" autofocus >
否则你可以使用JS来关注它:
<script>
if (document.addEventListener) document.addEventListener('DOMContentLoaded', myFunction )
else if (document.attachEvent) document.attachEvent( 'onreadystatechange', myFunction );
function myFunction() {
document.getElementById("box").focus();
}
</script>