我有问题强制关注JQuery对话框内容中文本框的动态生成。我已经搜索了这个,看起来如果Jquery对话框被设置为模态,JQuery“窃取”了文档级别的焦点。说实话,我不太明白这意味着什么:P,但如果有人对我的问题有任何解决方法,将不胜感激。以下是我的Jquery对话框的代码片段。焦点在JQuery对话框内的文本框不起作用
$.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();
},
当您发布此信息时,您可能错过了我上次编辑的内容。无论如何,正如你可以在我编辑的问题上看到的,我尝试了“open”和“focus”两个选项,并且我尝试在POST事件“完成”中添加set focuscode,但没有任何效果。就像我说的,你可以看到光标闪烁一秒,但是然后失去了焦点。 – asyadiqin 2012-01-10 01:08:03
对 - 你可以发布一个例子,也许用http://jsfiddle.net/? – danbgray 2012-01-10 09:24:08
我从来没有使用过jsfiddle.net,也不知道如何使用它。此外,原始代码对于我来说非常复杂,以便知道要在jsfiddle.net中提取哪些部分。任何其他方式,你可以帮助我吗? – asyadiqin 2012-01-11 18:00:35