フォーム内に入力された値のいくつかの条件に応じてフィールドが表示される、より複雑なフォームに取り組んでいます。
ただし、フォームが<Tab>
キー ( <Tab>
key->enter value-><Tab>
キー) で入力されると、新しく表示されたフィールドには移動せず、以前に表示されていたフィールドに移動します。
以下は単純化された例です。番号 1 のフィールドに何かを書き込むと、on change イベントがトリガーされ、値 2 の入力が表示されますが、次にフォーカスされるものは表示されません。
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<form>
<input id="input1" value="1" tabindex="1" onchange="$('#input2').show()">
<input id="input2" value="2" tabindex="2" style="display: none;">
<input id="input3" value="3" tabindex="3" onchange="$('#input4').show()">
<input id="input4" value="4" tabindex="4" style="display: none;">
<input id="input5" value="5" tabindex="5">
<input id="input6" value="6" tabindex="6">
</form>
その複雑さのために、<Tab>
キーを直接制御して演奏したくありません。また、onchange="$('#input2').show();$('#input2').focus()"
すぐ隣の要素でない場合も同じコードを使うので、 は使えません。これを解決する方法はありますか?
コメント/提案をお寄せいただきありがとうございます。