programing

jQuery를 사용하여 페이지 로드 시 양식 입력 텍스트 필드에 초점을 맞추는 방법은 무엇입니까?

kingscode 2022. 10. 29. 10:17
반응형

jQuery를 사용하여 페이지 로드 시 양식 입력 텍스트 필드에 초점을 맞추는 방법은 무엇입니까?

이것은 아마 매우 간단할 것입니다만, 페이지 로드시에 텍스트 박스의 커서가 점멸하는 방법을 가르쳐 주실 수 있겠습니까?

첫 번째 텍스트 필드에 포커스를 설정합니다.

 $("input:text:visible:first").focus();

이렇게 하면 첫 번째 텍스트 필드도 수행되지만 [0]을(를) 다른 인덱스로 변경할 수 있습니다.

$('input[@type="text"]')[0].focus(); 

또는 다음 ID를 사용할 수 있습니다.

$("#someTextBox").focus();

여기에는 HTML5를 사용할 수 있습니다.jQuery나 다른 JavaScript는 필요 없습니다.

<input type="text" name="some_field" autofocus>

IE9 이하에서는 동작하지 않습니다.

물론입니다.

<head>
    <script src="jquery-1.3.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function() {
            $("#myTextBox").focus();
        });
    </script>
</head>
<body>
    <input type="text" id="myTextBox">
</body>

왜 다들 이런 간단한 일에 jQuery를 사용하는 거죠?

<body OnLoad="document.myform.mytextfield.focus();">

이 작업을 수행하기 전에 사용자 인터페이스를 고려하십시오.jQuery's를 사용하여 문서를 로드할 때 이 작업을 수행할 수 있을 것으로 추측됩니다.ready()기능.문서를 로드하기 전에 이미 다른 요소에 초점을 맞추고 있는 경우(완전히 가능합니다), 초점을 빼앗기는 것은 매우 귀찮은 일입니다.

다음을 추가하여 확인할 수 있습니다.onfocus각 속성의<input>사용자가 이미 폼필드에 포커스를 두고 있는지 여부를 기록하는 요소 및 다음 항목이 있는 경우 포커스를 훔치지 않았는지 여부를 기록합니다.

var anyFieldReceivedFocus = false;

function fieldReceivedFocus() {
    anyFieldReceivedFocus = true;
}

function focusFirstField() {
    if (!anyFieldReceivedFocus) {
        // Do jQuery focus stuff
    }
}


<input type="text" onfocus="fieldReceivedFocus()" name="one">
<input type="text" onfocus="fieldReceivedFocus()" name="two">

HTML:

  <input id="search" size="10" />

j쿼리:

$("#search").focus();

케케묵은 질문을 해서 죄송합니다.구글에서 찾았어요.

또, 복수의 실렉터를 사용할 수 있기 때문에, 특정의 타입이 아닌 임의의 폼 요소를 대상으로 할 수 있습니다.

예:

$('#myform input,#myform textarea').first().focus();

이렇게 하면 처음 찾은 입력 또는 텍스트 영역에 초점이 맞춰집니다. 물론 다른 선택기를 혼합에 추가할 수도 있습니다.특정 요소 유형이 처음인지 확신할 수 없거나 약간 일반적이거나 재사용 가능한 것을 원하는 경우 유용합니다.

다음은 제가 사용하는 방법입니다.

<script type="text/javascript">
    $(document).ready(function () {
        $("#fieldID").focus(); 
    });
</script>

입력 후에 배치하다

<script type="text/javascript">document.formname.inputname.focus();</script>

회선$('#myTextBox').focus()텍스트 상자에 커서를 넣지 않고 다음 명령을 사용합니다.

$('#myTextBox:text:visible:first').focus();

$("#search").focus();

HTML5 요소를 사용할 수도 있습니다.<autofocus>

이를 실현하는 가장 간단하고 쉬운 방법

$('#button').on('click', function () {
    $('.form-group input[type="text"]').attr('autofocus', 'true');
});

언급URL : https://stackoverflow.com/questions/1591910/how-to-focus-on-a-form-input-text-field-on-page-load-using-jquery

반응형