0

矢印キーを使用して配列にナビゲーションを実装しようとしています。次のコードで動作しています。

"onLoad": function () {
        $('#tbl tbody').attr("tabindex", 1);
        $('#tbl tbody').keydown(function (event) {
            // Code for navigation to next or previous in table
        });
    },

ページの読み込み時にキーダウン イベントが正常に機能しています。テーブルを 1 回クリックするだけで、矢印キーを使用して移動できます。しかし、テーブルを動的にクリアして新しい行セットを追加した後、問題に直面しています。テーブルの最後で、このテーブル行をクリアして新しい行セットを追加するサーバーにコールバックする必要があります。その後、Keydownイベントが機能しなくなりました。ナビゲートするには、テーブルをもう一度クリックする必要があります。注: これは IE と Chrome でのみ発生します。Firefox では正常に動作しており、新しいデータまたは行のセットをナビゲートできます。

4

2 に答える 2

0

jQueryのlive関数でバインドします。

$('#tbl tbody').live('keydown', function(e) {});

これにより、実行時に作成された要素にもコールバックが適用されます。

ドキュメンテーション

于 2013-01-01T06:55:39.610 に答える
0

jerome.sが示唆しているように、今は私のために働いています。

今私がやっていることは、Ajax呼び出しが完了し、そのコールバック機能もテーブルを再レンダリングする仕事で完了したときにフォーカスを設定しています。部分を完全にレンダリングするとき、テーブル本体にフォーカスを設定しました。

$('#tbl body').focus();

ご回答ありがとうございます。

于 2013-01-02T08:16:48.097 に答える