Javascript Can';不要关注dojo按钮OK
如果另一个dojo的搜索(searchDlg)没有找到结果,我正在尝试运行一个Javascript Can';不要关注dojo按钮OK,javascript,html,dojo,Javascript,Html,Dojo,如果另一个dojo的搜索(searchDlg)没有找到结果,我正在尝试运行一个dojo(searchNotFound) 因此,dojo(searchNotFound)启动了,但没有关注OK(因为我在这个按钮OK上有一个事件onkeypress) 这是我的代码: 函数FindString(): function findString(str) { //Some Code //if serach not founding , running dojo
dojo
(searchNotFound)
因此,dojo(searchNotFound)启动了,但没有关注OK
(因为我在这个按钮OK上有一个事件onkeypress
)
这是我的代码:
函数FindString():
function findString(str) {
//Some Code
//if serach not founding , running dojo searchNotFound
if (!strFound) {
dojo.widget.byId("searchDlg").hide();
dojo.widget.byId("searchNotFound").show();
dojo.byId("searchnotfound_close").focus(); --> ****** not working ******
}
}
dojo(searchnotfound)的OK按钮(searchnotfound\u close)上的OnKeyPress事件:
-->很好
<button class="btn dlg" id="searchnotfound_close" onkeypress="javascript:closeSearchNotFound(event)"><span key="ok">Ok</span></button>
//#96985
function closeSearchNotFound(event) {
if(event.which == 13){
dojo.widget.byId('searchNotFound').hide();
dojo.widget.byId('searchDlg').show();
}
}
//
请参阅此测试视频:
我假设“searchNotFound”是一个dijit/对话框。show()是异步的,因为它用动画显示对话框。因此,show()返回一个。一旦承诺完成,对话框将完全呈现,您随后的搜索将正常工作 使用承诺并注册您自己的回拨:
registry.byId(“searchNotFound”).show()。然后(
函数(){
dojo.byId(“searchnotfound_close”).focus();
});代码>dojo.byId(“searchnotfound\u close”)是否返回dom?如果是这样,那么尝试在setTimeout中设置焦点(函数(){dojo.byId(“searchnotfound_close”).focus();},1000)。