Jquery ui 强制jQuery UI对话框按钮焦点

Jquery ui 强制jQuery UI对话框按钮焦点,jquery-ui,button,dialog,Jquery Ui,Button,Dialog,我有几个jQueryUI对话框,带有Ok和Cancel以及单选按钮(无文本输入) 我的要求是: 确定按钮应位于取消按钮的右侧,确定按钮应处于焦点位置: 当对话框打开时, 在任何用户单击或拖动后。 1号要求可以通过给Ok按钮一个id和以下代码来实现: open:函数(事件、用户界面){ $(“#确定按钮”).focus(); }, 2号要求更难。它可以通过为许多事件定义聚焦代理来实现: .ui对话框标题栏单击 .ui对话框按钮单击鼠标 风挡 等 但肯定有更简单的方法吗?试试这段代码myDia

我有几个jQueryUI对话框,带有
Ok
Cancel
以及单选按钮(无文本输入)

我的要求是:

确定按钮应位于取消按钮的右侧,确定按钮应处于焦点位置:

  • 当对话框打开时,
  • 在任何用户单击或拖动后。 1号要求可以通过给Ok按钮一个id和以下代码来实现:
    open:函数(事件、用户界面){
    $(“#确定按钮”).focus();
    },
    


    2号要求更难。它可以通过为许多事件定义聚焦代理来实现:

    • .ui对话框标题栏单击
    • .ui对话框按钮单击鼠标
    • 风挡

    但肯定有更简单的方法吗?

    试试这段代码
    myDialog
    是主对话框
    div
    当您拖动对话框时,这将完成任务

    jQuery('.myDialog').bind('move', function(e) {
        $('#OkButton').focus();
    }).bind('moveend', function() {});
    
    当你点击你的对话框主分区时,这将完成任务

    jQuery('.myDialog').click(function(){
        $('#OkButton').focus();
    });
    

    谢谢你的回答。您的第一个建议最好通过在Diaog小部件上定义dragStop事件处理程序来实现。您的第二个建议不起作用,但这个建议确实起作用了。单击(function(){$('.ui dialog')。focus();return true;}感谢您的审阅。我所说的“mydialog”类实际上是指主div类,在jQuery对话框中,它是jQuery原生的“.ui dialog”