【发布时间】:2022-02-10 17:27:23
【问题描述】:
我有一个简单的 jquery 确认对话框,并希望将焦点设置在对话框本身而不是任何其他元素上。下面的代码是我做的重点:
function showAlert() {
$("#dialog-confirm").dialog({
title: 'Main Information',
resizable: false,
height:140,
modal: true,
closeOnEscape:true,
buttons: {
"Yes": function() {
document.getElementById('form1:newProfile' ).value="true";
if(disableSaveFlag) return false; else disableEnableSaveBtn('true');
$( this ).dialog( "close" );
},
"No": function() {
document.getElementById('form1:newProfile' ).value="false";
if(disableSaveFlag) return false; else disableEnableSaveBtn('true');
$( this ).dialog( "close" );
}
}
});
$("#dialog-confirm").focus(); // this line sets focus on div element with given id
}
<div id="dialog-confirm" style="display:none">
<p><span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
Do you want to create a new profile ?
</p>
</div>
问题是我找不到对话框本身的“Id”来关注它。 结果焦点被设置在 Div 元素上,而我的标题没有得到焦点。
下面是我用上面的代码得到的:
【问题讨论】:
-
“聚焦”一个 div 是什么意思?
-
焦点需要输入类型标签。一个按钮什么的。你不能聚焦一个 div。
-
@TheBrain Google "Javascript focus a div" - 你会得到我从未听说过的结果
-
我刚刚添加了一个屏幕截图,请参考它,所需的结果是第二个也显示了倾斜的结果。基本上我专注于我添加的用于显示我自己的文本的 div。如何关注由“.dialog”动态创建的外部 div....
标签: javascript jquery html