【发布时间】:2011-04-01 19:25:11
【问题描述】:
我有一个包含侧面板和中心 div 的页面。当主页加载时,它会填满侧面板并进行 ajax 调用以获取中心 div 的适当内容。加载 ajax 内容后,我使用两个 jquery 插件 - 一个用于选项卡,另一个用于表单。在 Firefox 和 chrome 中,一切正常。但是,在 Internet Explorer 8 中,我得到了可爱的错误:对象不支持此属性或方法。
var url = '/instances/edit/' + instance_id + '/1';
$('#frame_content').load(url, function() {
$("ul.tabs").tabs("div.panes > div.pane", {history:true});
$('#InstanceEditForm').ajaxForm(function(responseText) {
....
});
});
我尝试删除 tabs 调用和 ajaxForm 调用并单独尝试它们,但它们都失败了。我注意到,如果编辑页面根本不加载任何内容,则选项卡和 ajaxForm 会以相同的方法调用;所以我的第一个预感是这是一个时间问题,而必要的 Dom 元素还没有加载。但是,在调用选项卡之前发出警报并没有帮助。在由 ajax 调用呈现的页面上使用 jQuery 调用时,我应该做些什么神奇的事情?
【问题讨论】:
-
进一步测试显示标签 ul 已加载。我可以在调用 $("ul.tabs").tabs("div.panes > div.pane", {history:true}); 之前提醒它的 id。失败。