2

ダイアログが開いたらフォーカスし$(this).parents( ...、ENTER キーを押すと実行するはずですが、そうではありません。ENTER キーが押されたときに実行する方法は?

            open: function() { 
                $(this).parents('.ui-dialog-buttonpane button:eq(0)').focus();
                $("#DIALOG2").keydown(function(event) {
                    if (event.which == 13) { //EXECUTE!
                        $(this).dialog("close");
                        ajax_usun(del_id);
                    }
                });             
            }

JSfiddle の例: ([削除] ボタンをクリックし、マウスを押して Enter キーを押してダイアログでボタンを押す代わりに - 何も起こりません) http://jsfiddle.net/FkbLT/2/

4

1 に答える 1

1

編集:

私は問題を発見しました。

            show: 'scale',                 

おそらく、「スケール」効果がまだ実行されているときにフォーカスを適用しようとして(そして失敗して)、スケール効果が終了すると、ボタンにフォーカスがないため、フォーカスが適用されません。

フィドル: http://jsfiddle.net/VjakR/

編集2:間違いなくJQueryのバグです。「表示」可能な設定をすべて試しましたが、次のように動作することが判明しました:

blind
clip
drop
fold
puff
slide
size
pulsate

それが壊れている間:

scale
explode

別のものを選択するか、このバグを JQuery 開発者に報告してください...

于 2012-10-19T09:02:18.213 に答える