Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
439 views
in Technique[技术] by (71.8m points)

html - How to set the focus on the first <select> element of the page using JQuery?

I would like to set the focus on the first element of the page using JQuery when the page is loaded. I could successfully set the focus for first element by using

$(":input:visible:first").focus(); 

or

$(':input:enabled:visible:first').focus();

according to jquery, set focus on the first enabled input or select or textarea on the page.

I tried to use any of the below:

$('select:first').focus();
$("select").first().focus();
$(':visible:first').focus();
$('enabled:visible:first').focus();

or other variations I could think of, but have not succeeded.

Could anyone help me on this problem? I am a beginner to JQuery.

I would like this function to work for all major browsers.

Thank you very much!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The problem is most likely to be that you are not running the code on after the DOM is loaded. Try this one:

$(document).ready(function(){
   $("select:first").focus();
});

That should work.

EDIT: You can simplify the code a bit by using this:

$(function(){
  $("select:first").focus();
})

If you use it that way, jQuery will trigger that function when the document's DOM is ready.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...