选择第一个输入,但不要选择type = hidden

Jef*_*rey 1 javascript jquery hidden jquery-selectors

我想要聚焦第一个不是的输入元素type=hidden.我已经做到这一点,但它仍然会尝试关注隐藏的元素.

$('#content input:first').focus();
Run Code Online (Sandbox Code Playgroud)

gdo*_*ica 10

使用:visible选择器:

$('#content input:visible:first').focus();
Run Code Online (Sandbox Code Playgroud)

:visible docs:

描述:选择所有可见的元素.元素可被视为隐藏,原因如下:

  • 它们的CSS显示值为none.
  • 它们是type ="hidden"的表单元素.
  • 它们的宽度和高度显式设置为0.
  • 隐藏了一个祖先元素,因此该元素不会显示在页面上.

如果对你来说太过分了,请使用Attribute Not Equal Selector:

$('#content input[type!="hidden"]:first').focus();
Run Code Online (Sandbox Code Playgroud)

Attribute Not Equal Selector docs:

描述:选择既没有指定属性,也没有指定属性但没有特定值的元素.