2010-12-01 5 views
0

J'ai une page qui utilise un iframe pour faire un téléchargement de fichier de style ajax. Lorsque le téléchargement est terminé, j'écris une div sur iframe avec le statut de si leur fichier a été téléchargé ou non. L'iframe n'est pas visible et j'utilise comme cible pour le formulaire. Tout fonctionne bien, sauf que je ne peux pas comprendre comment utiliser jquery pour obtenir le texte dans la div. Mon iframe a un identifiant de upload_target et le div de l'iframe a l'identifiant de uploadStatus. Je pensais que ce qui suit fonctionnerait mais ce n'est pas le cas. Est-ce que quelqu'un sait comment je peux faire cela? Merci.comment obtenir du texte à partir d'un div dans un iframe avec jquery

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

Répondre

1

Assurez-vous que votre iframe a son attribut name mis à upload_target ainsi, puis utiliser

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

Ajoutez à cela que votre iframe doit avoir le même domaine d'origine que la fenêtre parente pour que cela fonctionne. La lecture du contenu servi par un autre domaine serait considérée comme une violation de la sécurité. –

0

Utilisez ce code ...

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

Une fois que votre iframe est chargé. Votre texte div sera alerte.

0

Si vous avez Div comme suit dans un 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> 

Ensuite, vous pouvez trouver le texte de ces Div en utilisant le code suivant

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

var divInnerFormText = iContentBody.find("#divInnerForm").text(); 

J'espère que cela va aider quelqu'un.

Questions connexes