我有一个网页表单的文本框。如何在默认情况下设置文本框的焦点?

就像这样:

<body onload='setFocusToTextBox()'>

有人能帮帮我吗?我不知道如何用JavaScript设置文本框的焦点。

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

当前回答

试试这个:

$('.modal').on('shown.bs.modal', function () {
        setTimeout(function() {
                $("input#yourFieldId").addClass('modal-primary-focus').focus();
            },
            500);
    });

其他回答

如果你的<input>或<textarea>有属性id=mytext,那么使用

mytext.focus();

函数setFocusToTextBox() { mytext.focus (); } <身体onload = ' setFocusToTextBox () > < >形式 <input type="text" id="mytext"/> > < /形式 < /身体>

如果你的代码是:

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

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

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

请记住,必须首先绘制输入$(document).ready()

试试这个:

$('.modal').on('shown.bs.modal', function () {
        setTimeout(function() {
                $("input#yourFieldId").addClass('modal-primary-focus').focus();
            },
            500);
    });

如前所述,文档。表单也有用。

function setFocusToTextBox( _element ) {
  document.forms[ 'myFormName' ].elements[ _element ].focus();
}

setFocusToTextBox( 0 );
// sets focus on first element of the form

不管怎样,你可以在HTML5兼容浏览器上使用自动聚焦属性。甚至可以在IE版本10上使用。

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