2013-04-29 165 views
0

我在iframe中有一個窗體。我從父窗口提交該表單。服務器將成功或失敗標誌返回給該iframe。我想在關閉父窗口之前等待iframe獲取成功或失敗標誌。如何在執行函數之前等待我的iframe加載?

我想jQuery的.ready()但它不工作。

我也不想把下面的代碼放在我的iframe的onload中,用一些黑客來關閉父窗口。

document.myFrame.submit(); // a function called submit() inside my iframe that submits a form in the iframe 
     $(document.myFrame).ready(function(){ 
      var successError = document.myFrame.successError 
      if(successError == "Y"){ 
       closeParentWindow(); 
      }else{ 
       alert(successError); 
      } 

     }); 
+0

ID不知道CORS是什麼,所以它可能後者 – code511788465541441 2013-04-29 15:43:25

回答

2

試試這個:

$(document.myFrame).load(function(){ 
     var successError = document.myFrame.successError 
     if(successError == "Y"){ 
      closeParentWindow(); 
     }else{ 
      alert(successError); 
     } 

    }); 

生JS例如:

var iframe = document.createElement('iframe'); 
iframe.addEventListener('load', function(){ alert('asd'); }); 
iframe.src = "http://www.youtube.com/embed/JRWox-i6aAk"; 
document.body.appendChild(iframe); 

工作fiddle

正如你所說的,它可能是跨源資源共享問題太

+0

沒有工作。我把一個警報,永遠不會執行。我也試過$(「#theframeid」) – code511788465541441 2013-04-29 15:42:38

+0

@ user521180你的代碼是否在'$(document).ready(function(){});'? – Ian 2013-04-29 15:43:37

+0

@ian裏面是什麼..? – code511788465541441 2013-04-29 15:44:14

相關問題