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 与示例:(单击删除按钮并在对话框中按下鼠标按回车键 - 没有任何反应)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 回答