【发布时间】:2013-11-16 07:05:58
【问题描述】:
这个问题只发生在 IE8 中,否则在 Chrome、FF 等中可以正常工作。问题是我试图通过根据需要加载 HTML 文件来将大型项目分解为更小的模块。其中一个 HTML 文件具有一个以 HTML 表单作为其内容的对话框。以下是父文件中的代码:
$('#login').click(function(){
$('#login_dialog').load('html/login_dialog.html', function() {
$("#login_dialog").dialog("open");
});
});
对话框代码在 login_dialog.html 文件中。单击时,它会加载文件并完成其余工作。非常简单,除了在 IE8 中外,它按预期工作。 IE8报错是
cannot call methods on dialog prior to initialization; attempted to call method 'open'
现在,如果将整个 login_dialog.html 文件复制到父文件中而不是动态加载它,那么即使在 IE8 中也一切正常。有关解决此问题的任何想法?我试过 dialog_var = $(#login_dialog).dialog({....});然后是 dialog_var.dialog("open") 正如本论坛另一篇文章中所建议的那样。那也不起作用。
【问题讨论】:
标签: jquery user-interface internet-explorer-8 dialog