Javascript 关闭jquery ui对话框后,聚焦文本框

Javascript 关闭jquery ui对话框后,聚焦文本框,javascript,jquery,asp.net-mvc,jquery-ui,Javascript,Jquery,Asp.net Mvc,Jquery Ui,我的asp.NETMVC视图中有一个文本框,它在焦点上显示一个JQuery UIi对话框。在这个对话框中,我想确保当单击OK按钮时,父页面上的同一文本框应该获得显示弹出窗口的焦点。我尝试在关闭前后使用JQuery焦点,如下所示: $(this).dialog("close"); $("#DefaultCallFrom1").focus(); 但它不起作用。请对此提出解决方案。初始化对话框时,使用关闭事件在对话框关闭时设置焦点: $(this).dialog({ close: functio

我的asp.NETMVC视图中有一个文本框,它在焦点上显示一个JQuery UIi对话框。在这个对话框中,我想确保当单击OK按钮时,父页面上的同一文本框应该获得显示弹出窗口的焦点。我尝试在关闭前后使用JQuery焦点,如下所示:

$(this).dialog("close");
$("#DefaultCallFrom1").focus();

但它不起作用。请对此提出解决方案。

初始化对话框时,使用关闭事件在对话框关闭时设置焦点:

$(this).dialog({
  close: function( event, ui ) {
     $("#DefaultCallFrom1").focus();
  }
});
关闭事件的jQuery UI对话框

编辑

如果您试图在单击对话框中的按钮后应用焦点,则应尽可能简单:

$( "#dialog" ).dialog({ 
    autoOpen: true,
    buttons: [ 
        { 
            text: "Ok", click: function() {
                $( this ).dialog( "close" ); 
                $('#DefaultCallFrom1').focus();
            } 
        } 
    ] 
});

我需要在“确定”按钮上执行该操作。在“确定”按钮上执行某些功能后,单击“确定”按钮。此外,我在对话框中添加了上述“关闭”功能代码,它添加了一个名为“关闭”的新按钮,单击该按钮不会关闭对话框。。我想是因为这个焦点调用重新出现了弹出窗口。谢谢,但是如果autoOpen为false并且#对话框在点击$(“#DefaultCallFrom1”)时打开呢?在这种情况下,对话框将不会关闭,因为循环…什么循环??您是否在对焦输入时打开弹出窗口,并在对话框关闭时再次尝试对焦输入?如果是这样,请使用one()。不能使用在每个焦点上打开对话框的事件处理程序来创建循环,one()类似于on(),但它只触发一次。