JavaScript将焦点设置为HTML表单元素

我有一个在其中的文本框的Web表单。 我如何去默认设置焦点到文本框?

像这样的东西:

<body onload='setFocusToTextBox()'> 

所以有人可以帮我吗? 我不知道如何将焦点设置到JavaScript的文本框。

 <script> function setFocusToTextBox(){ //What to do here } </script> 

做这个。

如果你的元素是这样的

 <input type="text" id="mytext"/> 

你的脚本是

 <script> function setFocusToTextBox(){ document.getElementById("mytext").focus(); } </script> 

对于它的价值,您可以在兼容HTML5的浏览器上使用autofocus属性。 即使在IE版本10以上也可以使用。

 <input name="myinput" value="whatever" autofocus /> 

通常当我们关注文本框时,我们也应该滚动到视图中

 function setFocusToTextBox(){ var textbox = document.getElementById("yourtextbox"); textbox.focus(); textbox.scrollIntoView(); } 

检查是否有帮助。

对于简单的Javascript,请尝试以下操作:

 window.onload = function() { document.getElementById("TextBoxName").focus(); }; 

如果你的代码是:

 <input type="text" id="mytext"/> 

如果你正在使用JQuery,你也可以使用它:

 <script> function setFocusToTextBox(){ $("#mytext").focus(); } </script> 

请记住,您必须先inputinput($(document).ready())

我曾经只是使用这个:

 <html> <head> <script type="text/javascript"> function focusFieldOne() { document.FormName.FieldName.focus(); } </script> </head> <body onLoad="focusFieldOne();"> <form name="FormName"> Field <input type="text" name="FieldName"> </form> </body> </html> 

也就是说,你可以在HTML 5中使用autofocus属性。

请注意:我想更新这个旧的线程显示问题的例子,还有那些仍然阅读这个更新,更容易更新。 ;)

如前所述, document.forms也起作用。

 function setFocusToTextBox( _element ) { document.forms[ 'myFormName' ].elements[ _element ].focus(); } setFocusToTextBox( 0 ); // sets focus on first element of the form