それはかなり簡単です。ページで非表示ではなく、最初に有効になっているコントロールにフォーカスを設定したい。
テキストボックスの場合、
$("input[type='text']:visible:enabled:first").focus();
しかし、私は「すべての」フォーム入力コントロールを取得したいと思います。セレクターのテキストボックス、チェックボックス、テキストエリア、ドロップダウン、ラジオを使用して、最初の有効で非表示ではないコントロールを取得します。助言がありますか?
$(':input:enabled:visible:first').focus();
ジョーダンの答えの延長として
$(':input:enabled:visible:not([readonly]):first').focus();
これは読み取り専用の入力も除外します
これはもう少し包括的です:
$('form :input:text:visible:not(input[class*=filter]):first').focus();
ラーメン:表示されているフォームの最初のテキスト入力にカーソルを合わせますが、「filter」という名前のクラスを使用している場合は無視してください。
これを試して:
$("input[type='text']:enabled","another selector","another selector").first().focus();