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