0

私はこのフィドルを持っています。タブを押すと、フォーカスは次の要素に設定されますが、そうではありません。コードは次のとおりです。

<input type="text" style="font-size:12px;width:245px;" border-style="Solid" tabindex="3" id="txtCAddress" maxlength="100" name="txtCAddress" />
</br>

<input type="text" style="font-size:12px;width:245px;" border-style="Solid" tabindex="4" id="txtMobile" name="txtMobile"/>

</br>

<input type="text" style="font-size:12px;width:245px;" border-style="Solid" id="txtPriority" maxlength="300" name="txtPriority" tabindex="5" autocomplete="off" />

jsは

$(document).ready(function(event) {
    $('#txtCAddress').keydown(function(e) {
        if ((e.which == 9)) {
            if ($('#txtCAddress').val() == '') {
                alert('me');
            }
        }
    });
});

txtCAddressテキストを入力してTabキーを押すと、フォーカスは例外として設定されますが、テキストを入力せずtxtMobileにTabキーを押すと、アラートは正常に表示されますが、フォーカスは設定されていますか?txtCAddresstxtPriority

なぜ焦点が当てられていないのtxtMobileですか?

jsフィドルを編集する

http://jsfiddle.net/sXaMG/1/

4

1 に答える 1

0

オーバーライド イベントのデフォルトの動作として keydown 関数のコールバックで alert() を使用しないでください。代わりに console.log() を使用してください。それから、完璧に機能しているようです。

于 2012-10-22T13:47:49.247 に答える