我必须编写一些jQuery来专注于第一个表单元素,如果它是文本框,密码类型或下拉菜单。
var Text = $('#pagebody').find('input:text:visible:first')
var Pass = $('#pagebody').find('input:password:visible:first')
var Select = $('#pagebody').find('select:visible:first')
if(Text)
{
Text.focus();
}
else if(Pass)
{
Pass.focus();
}
else
{
Select.focus();
}
我无法专注于if语句的第一个查询中传递的任何内容,我不是100%确定原因。
我只是想知道,如果它是文字,密码或下拉列表,我将如何选择第一个表单元素?
如果有文字和密码,如何选择第一个?
答案 0 :(得分:3)
这应该这样做:
$("#pagebody").find('input[type=text],input[type=password],select')
.filter(':visible:first').focus();
答案 1 :(得分:1)
只需一次选择所有类型的元素,然后点击完整列表中的第一个元素:
var element= $('#pagebody').find('input:text:visible, input:password:visible, select:visible').first();
if(element){
element.focus();
}