2017-02-18 5 views
2

У меня есть простой текстовое поле вводаКак передать команду JS для ввода курсора в поле ввода?

<input value="Hello"> 

Я хочу, чтобы написать код JS, который поместить фокус на поле ввода и поместить курсор внутрь.

Я пытался использовать фокус() в JQuery:

$('document').ready(function(){ 
    $($('input')[0]).click(function() { 
     this.focus(); 
    }) 
}) 

и это не сработало.

+0

Это не имеет никакого смысла ставить фокус на элемент, который вы кликнули. –

ответ

1

Вы должны получить доступ к элементу input используя простой selector: $('input'). Затем вам необходимо привязать обработчик события к событию JavaScript focus.

$('document').ready(function(){ 
    $('input').focus(); 
}); 
+0

это ответ. thanks – CrazySynthax

+0

Это приведет к тому, что первый элемент 'input' в документе получит фокус. Вы должны использовать более конкретный селектор, если окажется, что первый не тот, который нуждается в фокусе. –

+0

@ScottMarcus, я знаю это. Я использовал этот селектор только для этого примера. OP затем адаптируется к его коду. –

0

JQuery не требуется для такой простой проблемы. Просто войдите в элемент через действительный селектор и вызовите его метод .focus().

window.addEventListener("DOMContentLoaded", function(){ 
 
    document.querySelector("input[value='Hello']").focus(); 
 
});
<input value="Hello">

-1

вы можете использовать CSS вместо

input:focus { 
    background-color: #hex_code; 
} 
+0

Как вы можете связать событие '.focus', когда страница загружается с помощью css? –

+1

Это не приведет к тому, что элемент получит фокус. Он будет стилизовать его, когда он будет в центре внимания. –