0

jQuery タブを中心に構築された Web インターフェイスを構築しています。最初のタブには、他のタブをすばやく検索するために使用できるテキスト入力が含まれています。最初のタブが選択されるとすぐにテキストボックスがフォーカスされるようにして、ユーザーができるだけ早く入力を開始できるようにします。

tabsselect現在、イベントを使用してフォーカス盗用機能をバインドしようとしていますが、何かが足りないようです。

私の現在のコード:

$("#usertabs").tabs().bind("tabsselect",function( event, ui){
    if(ui.index == 0){
        alert('fire');
        $('#barcodeselect').focus();
    }
});

最初のタブをクリックするとアラートがポップアップし、それを閉じるとすぐに最初のタブが表示されますが、textboxフォーカスがありません。

$('#barcodeselect').focus();a から呼び出すconsoleと目的の効果が得られるため、タイプミスなどである必要はありません。

タブを変更すると、からフォーカスが奪われる可能性がありますtextboxか? もしそうなら、開始ではなく終了しているタブの変更にバインドする方法はありますか? それとも私はただ忘れているだけですか?

4

1 に答える 1

1

tabsshowの代わりに使用する必要がありtabsselectます。

タブがクリックされると、タブの選択が行われます(これにより、falseを返すタブの変更をキャンセルできます)。

タブ表示は、タブが最終的に選択されて表示されたときに発生します。

于 2012-06-07T16:21:55.950 に答える