jQuery动态关注第一个INPUT或Textarea

The*_*xit 26 jquery jquery-selectors

从早上开始,这是一个棘手的问题.

我有一系列的图标.单击图标时,它会加载表单.有些表格有输入[text],其他表格有textareas.

我想要提出的是jQuery,一旦我加载了我可以运行的表单,那将...专注于第一个输入或textarea,无论它是什么,动态,所以我不需要if块.

想法?

Onk*_*org 65

我认为应该这样做

$("#formId input:text, #formId textarea").first().focus();
Run Code Online (Sandbox Code Playgroud)

  • +1这个也可以。忽略我的答案。 (2认同)
  • 下面来自 Viliam 的回答更好。 (2认同)

Vil*_*iam 43

这里是:

$('#form-id :input:enabled:visible:first').focus();
Run Code Online (Sandbox Code Playgroud)

#form-id是表单的ID; :input选择任何输入和textarea元素; :enabled确保输入可编辑; :viisble确保元素可见; :首先是显而易见的

  • +1提醒我,我有隐藏的输入:) (3认同)

Tom*_*ers 11

$(":input:first").focus(); 
Run Code Online (Sandbox Code Playgroud)

:input选择器抓住所有的输入,文本区域,选择和按钮元件.


Pat*_*cia 9

你的一些代码会很好..但这应该很容易.

假设你加载你的div进入你知道的id ...

所有你需要做的就是这样

$('#TheIdOfYourFormDiv').find('input, textarea').first().focus()
Run Code Online (Sandbox Code Playgroud)

在您加载表单后