Это, наверное, очень просто, но может ли кто-нибудь сказать мне, как заставить курсор мигать в текстовом поле при загрузке страницы?
Как сфокусироваться на текстовом поле ввода формы при загрузке страницы с помощью jQuery?
Ответ 1
Установите фокус на первом текстовом поле:
$("input:text:visible:first").focus();
Это также первое текстовое поле, но вы можете изменить [0] на другой индекс:
$('input[@type="text"]')[0].focus();
Или вы можете использовать ID:
$("#someTextBox").focus();
Ответ 2
Вы можете использовать HTML5 autofocus
для этого. Вам не нужен jQuery или другой JavaScript.
<input type="text" name="some_field" autofocus>
Обратите внимание, что это не будет работать на IE9 и ниже.
Ответ 3
Конечно:
<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>
Ответ 4
Почему все используют jQuery для чего-то простого.
<body OnLoad="document.myform.mytextfield.focus();">
Ответ 5
Подумайте о своем пользовательском интерфейсе, прежде чем делать это. Я предполагаю (хотя ни один из ответов не сказал так), что вы будете делать это, когда документ загружается с использованием функции jQuery 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">
Ответ 6
HTML:
<input id="search" size="10" />
JQuery
$("#search").focus();
Ответ 7
Извините, что столкнулся с старым вопросом. Я нашел это через google.
Также стоит отметить, что его можно использовать более одного селектора, таким образом вы можете настроить таргетинг на любой элемент формы, а не только на один конкретный тип.
например.
$('#myform input,#myform textarea').first().focus();
Это сфокусирует первый вход или текстовую область, которую он найдет, и, конечно же, вы можете добавить и другие селекторы в микс. Hnady, если вы не можете быть уверены в том, что определенный тип элемента является первым, или если вы хотите что-то общее или повторно используемое.
Ответ 8
Это то, что я предпочитаю использовать:
<script type="text/javascript">
$(document).ready(function () {
$("#fieldID").focus();
});
</script>
Ответ 9
место после ввода
<script type="text/javascript">document.formname.inputname.focus();</script>
Ответ 10
Самый простой и легкий способ добиться этого
$('#button').on('click', function () {
$('.form-group input[type="text"]').attr('autofocus', 'true');
});
Ответ 11
$('#myTextBox').focus()
строка $('#myTextBox').focus()
не будет помещать курсор в текстовое поле, вместо этого используйте:
$('#myTextBox:text:visible:first').focus();