2010-12-01 37 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(); 
找到那些 股利文本

我希望这会帮助别人。

相关问题