2014-08-27 96 views
0

我與後續的jQuery的片斷工作:jQuery的多負載問題

$('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火災。點擊事件。

問題是點擊事件加載另一個iframe。我所擁有的第二個.load不能用於觸發DataExportSection_MSExcelLink的單擊事件。

我試圖在第一個.load內部嵌套第二個.load,但那也不起作用。

我正在使用title =,因爲兩個iframe具有相同的名稱。

任何洞察我的失蹤?

僅供參考,jQuery 1.4pre已加載,無法加載新版本。

+0

是此行達到了? 'console.log(「加載導出選項」);' – melancia 2014-08-27 15:49:42

+0

提示:不要使用標題,而要提供iframes ID。 – melancia 2014-08-27 15:50:22

+0

請在每個頁面中包含您的html以及iframe是如何創建的。用你的問題,我們只能猜測它爲什麼不加載。 – tcooc 2014-08-27 15:50:56

回答

0

我還是設法得到它的工作使用以下

$('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,"")); 
    }); 
}); 
0

這項工作?可能的解決方案未經測試...

$('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(); 
}); 
+0

謝謝,Chrome正在拋出一個「Uncaught TypeError:undefined不是函數」。我錯過了一個關鍵點。 jQuery 1.4pre被加載並且無法加載較新的版本來執行限制。 – primortal 2014-08-27 16:40:38