Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 显示焦点上的jquery UI对话框赢得';不要聚焦元素_Jquery Ui_Focus_Jquery Dialog - Fatal编程技术网

Jquery ui 显示焦点上的jquery UI对话框赢得';不要聚焦元素

Jquery ui 显示焦点上的jquery UI对话框赢得';不要聚焦元素,jquery-ui,focus,jquery-dialog,Jquery Ui,Focus,Jquery Dialog,我想在用户聚焦某个输入框时显示一个jqueryui对话框。问题是,关闭对话框后,输入框将无法获得焦点,这意味着用户单击输入框,对话框将打开。用户关闭对话框->输入框没有焦点 真正聚焦输入框的唯一方法是在对话框已显示时再次单击输入框。这很烦人。我希望输入框在关闭对话框后具有焦点 $(function() { $( "#identifiersDialog" ).dialog({autoOpen: false}); }); $('#identifiers').focus(fun

我想在用户聚焦某个输入框时显示一个jqueryui对话框。问题是,关闭对话框后,输入框将无法获得焦点,这意味着用户单击输入框,对话框将打开。用户关闭对话框->输入框没有焦点

真正聚焦输入框的唯一方法是在对话框已显示时再次单击输入框。这很烦人。我希望输入框在关闭对话框后具有焦点

$(function() {
    $( "#identifiersDialog" ).dialog({autoOpen: false});
});        
$('#identifiers').focus(function(event) {
     $( "#identifiersDialog" ).dialog('open');           
});
这应该会有所帮助

$(function() {
    $( "#identifiersDialog" ).dialog({autoOpen: false, close: function() { $('#identifiers').focus()  }});
});        
$('#identifiers').focus(function(event) {
     $( "#identifiersDialog" ).dialog('open');           
});
你可以用

$(function(){
    InitiliseInput();    
});
function InitiliseInput(){
    $('#identifiers').bind('focus', function() {
        $('#identifiersDialog').dialog({ close: function() { 
            $('#identifiers').unbind('focus').focus().blur(function(){ InitiliseInput()});              
        }});
    }); 
}
这里的工作示例


当焦点离开输入时,
blur
功能将重置对话框,以便重新聚焦将再次打开对话框。

这将导致关闭.works时对话框再次直接打开。但是您需要添加$('#IdentifierDialog').hide();否则,包含对话框文本的div将显示在页面上。您有对话框的样式表吗?当jQueryUI对话框关闭时,它总是隐藏,除非您没有样式表或确保#IdentifierDialog样式设置为
display:none