【发布时间】:2012-02-06 12:10:30
【问题描述】:
我在强制关注动态生成的 JQuery 对话框内容中的文本字段时遇到问题。我对此进行了谷歌搜索,似乎如果将 Jquery 对话框设置为模式,则 JQuery 在文档级别“窃取”焦点。老实说,我真的不明白这意味着什么:P 但如果有人对我的问题有任何解决方法,我们将不胜感激。下面是我的 Jquery 对话框的代码 sn-ps。
$.post(URI, Params, function(data){
$("<div id='MyModal'></div>").html(data).dialog({
show: "blind",
width:1000,
height:600,
title:"My Modal",
resizable: false,
modal: true,
draggable:false,
position:['center','center'],
buttons: {
"Close": function() {
//window.console.log('Close button clicked');
$(this).dialog("close");
},
},
// Onclose callback
close:function(){
// Close modal
CloseDiaryModal();
}
// End onclose callback
})
// Add styling to button widgets
.dialog("widget")
.find(".ui-dialog-buttonset").css({'float': 'left', 'width': '100%'}).end()
.find(".ui-dialog-buttonset button")
.eq(0).css({'float': 'left', 'margin-left': '10px'}).end()
.eq(0).attr('id', 'CloseBtn').end()
})
.complete(function() {
// Set focus
$("#SearchField").focus();
});
// End modal function
我已尝试添加以下选项,但仍然无法正常工作。 ATM,您可以看到光标闪烁约 1 秒,然后失去焦点。无法弄清楚为什么会这样。谢谢,希望有人可以帮助我。
focus:function(event, ui) {
$("#SearchLastName").focus();
},
open:function(event, ui) {
$('#SearchLastName').focus();
},
【问题讨论】:
标签: jquery jquery-ui-dialog setfocus