jQuery多个加载问题
我正在使用以下jQuery代码段:jQuery多个加载问题,jquery,Jquery,我正在使用以下jQuery代码段: $('iframe[title="Export"]').load(function() { console.log("Export Dialog Loaded"); $('#master_btnExport',ContentWindow.document).click(); }); $('iframe[title="Export Dialog"]').load(function() {
$('iframe[title="Export"]').load(function() {
console.log("Export Dialog Loaded");
$('#master_btnExport',ContentWindow.document).click();
});
$('iframe[title="Export Dialog"]').load(function() {
console.log("Export Options Loaded");
$('#DataExportSection_MSExcelLink',ContentWindow.document).click();
});
发生的情况是,第一个.load工作正常,一旦加载了iframe,就会触发master_btnExport的.click事件
问题是单击事件会加载另一个iframe。我的第二个.load无法启动DataExportSection\u MSExcelLink的click事件
我试着嵌套第二个。在第一个里面装入。装入,但也不起作用
我使用title=是因为两个iframe具有相同的名称
对我遗漏的东西有什么见解吗
仅供参考,jQuery 1.4pre已加载,无法加载新版本。这是否可行?可能未经测试的解决方案
$('iframe[title="Export"]').load(function() {
console.log("Export Dialog Loaded");
$('#master_btnExport',ContentWindow.document).click();
});
$(document).on('load', 'iframe[title="Export Dialog"]', function() {
console.log("Export Options Loaded");
$('#DataExportSection_MSExcelLink',ContentWindow.document).click();
});
我确实通过以下方法让它工作了
$('iframe[title="Export"]').load(function() {
$('#master_btnExport',ContentWindow.document).click();
$(this).contents().find('iframe').load(function(){
eval($(this).contents().find('a[id="DataExportSection_MSExcelLink"]').click().attr('href').replace(/javascript:/i,""));
});
});
到这条线了吗?console.logExport选项已加载;提示:不要使用标题,而是提供iframes ID。请包括每个页面的html以及如何创建iframes。根据您的问题,我们只能猜测它为什么没有加载。@MelanciaUK,未到达console.log,iFrame没有id属性,但有name属性。这两个iFrame都有相同的名称ContentWindow,正如我在上面的第一篇文章中所说的。如果有一种方法可以引用每个具有相同名称的iFrame,我非常愿意使用它。@t毫无问题地加载iFrame,这不是问题所在。问题是单击第二个iframe窗口中的链接,我的代码中的第二个.load没有到达该窗口,console.logExport选项加载没有被执行。谢谢,Chrome抛出了一个未捕获的TypeError:undefined不是一个函数。我错过了一个关键点。jQuery 1.4pre已加载,无法加载更新版本的do-to-restrictions。