.focus() ไม่ทำงานหลังจากการ Add
ช่วยดูหน้านี้ให้หน่อยครับ คือผมต้องการให้ Cursor มาอยู่ใน Txtbox ที่ชื่อว่า model_number แล้วตอนนี้ก็สามารถทำได้แล้วโดยใช้
<body onLoad="document.getElementById('model_number').focus()">
แต่หลังจากการ Add ข้อมูลลงแล้วและให้ Refresh หน้าโดยคำสั่งนี้
<script type="text/javascript">
window.location.href="record_receive.php";
</script>
Cursor กลับไม่ไปอยู่ใน Txtbox ที่ต้องการ แต่กลับไปอยู่ใน Address bar
ซึ่งถ้ากด Refresh ปกติของ IE Cursor จะมาอยู่ตามที่ได้ระบุไว้ ไม่ทราบว่ามีวิธีไหนไหมคับ ที่ Add ข้อมูลแล้วให้ Cursor มาอยู่ตามที่เราตั้งไว้ แต่การ Add ของผมใช้ Onblur นะครับ ไม่ได้มาจากปุ่ม Button เนื่องจากรับจาก Scanbarcode ไม่ทราบว่ามีวิืธีไหมครับ
2. หรือ ลองหน่วงเวลาเล็กน้อย (100 คือ เวลา ลองปรับเวลาการหน่วงดู)
window.setTimeout(function(){document.getElementById('module_number').focus()}, 100);
ปกติแล้วการใช้คำสั่ง focus หน้าเว็บต้อง active ด้วย ไม่งั้น error (หมายถึง windows นั้นต้องได้รับโฟกัสด้วย)
วิธีที่ 1 จะ Refresh หน้าเดิมไม่ออกไปไหนเลยครับ
วิธีที่ 2 หน่วงเวลาแล้วก็ยังไม่ได้เหมือนกันครับ
ซึ่งก็หน้าแปลกที่ว่าถ้่าเป็นการ link มาสามารถที่จะทำให้ Cusor อยู่ตามตำแหน่งที่ต้องการได้
ผมก็ได้ทดลอง Redirect ไปหน้าอื่นก่อน แล้วค่อย Redirect กลับมา ก็ไม่สามารถทำได้อีกเหมือนกัน
ขอบคุณมากครับ
window.addEventListener()