2010-12-01 51 views
0

我有一個頁面使用iframe來執行ajax樣式文件上傳。當上傳完成時,我正在向iframe寫入一個div,以及是否上傳文件的狀態。該iframe不可見,我用作表單的目標。這一切工作正常,但我不知道如何使用jQuery獲取div內的文本。我的iframe的id爲upload_target,iframe中的div的id爲uploadStatus。我認爲以下方法可行,但事實並非如此。有誰知道我該怎麼做?謝謝。如何使用jquery從iframe中獲取文本

$("#upload_target").load(function() { 
    alert($("#upload_target> #uploadStatus").text()); 
}); 

回答

1

確保您iframe有其name屬性設置爲upload_target爲好,然後用

alert($("#uploadStatus", frames['upload_target'].document).text()); 
+1

此外,您的iframe必須具有與父窗口相同的原始域才能使其工作。閱讀由另一個域提供的內容將被視爲安全違規。 – 2010-12-01 16:06:58

0

使用此代碼...

 
$("#upload_target").load(function() { 
    alert($("#uploadStatus").html()); 
}); 

一旦你的iframe中被加載。您的文本文本將保持警覺。

0

如果你有事業部作爲一個的iFrame

<iframe id="ifrmReportViewer" name="ifrmReportViewer" frameborder="0" width="980" 

    <div id="EndLetterSequenceNoToShow" runat="server"> 11441551 </div> Or 

    <form id="form1" runat="server">   
     <div style="clear: both; width: 998px; margin: 0 auto;" id="divInnerForm">   

      Some Text 

     </div> 
    </form> 
</iframe> 

然後接着你可以用下面的代碼

var iContentBody = $("#ifrmReportViewer").contents().find("body"); 
var endLetterSequenceNo = iContentBody.find("#EndLetterSequenceNoToShow").text(); 

var divInnerFormText = iContentBody.find("#divInnerForm").text(); 
找到那些 股利文本

我希望這會幫助別人。

相關問題