Konstantin Milyutin
Konstantin Milyutin

Reputation: 12366

Get content of iframe from jquery

everyone. I created my page and inserted inside another page using IFrame. Now I'm trying to get whole text of that inserted page using pure javascript or jquery. Here's what I have now, but it doesn't work...

    <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="jquery-1.5.1.js"></script>   
<script type="text/javascript">
function getFrameContents(){
   return $("#myframe").contents().find('body');
}
</script>
</head>

<form>
<input type="button" value="CodingForums" onClick="window.alert(getFrameContents())" />
</form>

<iframe id='myframe' src="http://www.fxstreet.com/rates-charts/currency-rates/" width="100%" height="300">
  <p>Your browser does not support iframes.</p>
</iframe>

</html>

I've read also that there is some policy about accessing pages from different server. How can I do it properly?

Upvotes: 4

Views: 7854

Answers (2)

Val
Val

Reputation: 17542

Many people ask this question...

The best way people describe is (as i dont like iframes) but you need on iframe to collect the data and use window.top.... to access the main page and pass it that way because .contents() is not supported by all browsers.

Upvotes: 1

vbence
vbence

Reputation: 20343

I've read also that there is some policy about accessing pages from different server.

Yes there is and the policy says it's strictly forbidden.

How can I do it properly?

Fetch it on the server-side. You might want to use a server-side cache too.

Upvotes: 4

Related Questions