ฉันมีแบบฟอร์มที่มีช่องข้อความและต้องการวางเคอร์เซอร์ (โฟกัสอัตโนมัติ)ไว้ที่ช่องข้อความแรกของฟอร์มเมื่อโหลดหน้า
ฉันต้องการทำโดยไม่ต้องใช้จาวาสคริปต์
ฉันมีแบบฟอร์มที่มีช่องข้อความและต้องการวางเคอร์เซอร์ (โฟกัสอัตโนมัติ)ไว้ที่ช่องข้อความแรกของฟอร์มเมื่อโหลดหน้า
ฉันต้องการทำโดยไม่ต้องใช้จาวาสคริปต์
คำตอบ:
เป็นไปได้ที่จะทำได้โดยไม่ต้องรองรับ javascript ..
เราสามารถใช้แอตทริบิวต์โฟกัสอัตโนมัติ html5
ตัวอย่าง:
<input type="text" name="name" autofocus="autofocus" id="xax" />
หากใช้ (ออโต้โฟกัส = "โฟกัสอัตโนมัติ") ในช่องข้อความหมายความว่าช่องข้อความจะถูกโฟกัสเมื่อโหลดหน้า .. สำหรับรายละเอียดเพิ่มเติม:
http://www.hscripts.com/tutorials/html5/autofocus-attribute.html
เพียงเพิ่มautofocus
อินพุตแรกหรือพื้นที่ข้อความ
<input type="text" name="name" id="xax" autofocus="autofocus" />
autofocus
ไม่ทำงาน แต่autofocus="autofocus"
ทำ
<body onLoad="self.focus();document.formname.name.focus()" >
formname is <form action="xxx.php" method="POST" name="formname" >
and name is <input type="text" tabindex="1" name="name" />
it works for me, checked using IE and mozilla.
autofocus, somehow didn't work for me.
สิ่งนี้จะได้ผล:
OnLoad="document.myform.mytextfield.focus();"
การขยายตัวสำหรับผู้ที่เล่นซอเล็กน้อยเช่นฉัน
งานต่อไปนี้ (จาก W3):
<input type="text" autofocus />
<input type="text" autofocus="" />
<input type="text" autofocus="autofocus" />
<input type="text" autofocus="AuToFoCuS" />
สิ่งสำคัญคือต้องทราบว่าสิ่งนี้ใช้ไม่ได้กับ CSS เช่นคุณไม่สามารถใช้:
.first-input {
autofocus:"autofocus"
}
อย่างน้อยมันก็ไม่ได้ผลสำหรับฉัน ...
บางครั้งสิ่งที่คุณต้องทำเพื่อให้แน่ใจว่าเคอร์เซอร์อยู่ในกล่องข้อความคือคลิกที่กล่องข้อความและเมื่อเมนูปรากฏขึ้นให้คลิกที่ "จัดรูปแบบกล่องข้อความ" จากนั้นคลิกที่แท็บ "กล่องข้อความ" และสุดท้ายแก้ไขทั้งหมด ระยะขอบสี่ด้าน (ซ้ายขวาบนและล่าง) โดยลูกศรลงจนกว่า "0" จะปรากฏในแต่ละระยะขอบ
<input.... tabindex="1" />