3

I've got this <iFrame> [name="data"] with a page displaying a <span>, with id="weergave_percentage". I want to get the numbers from that span into a javascript function. I currently made this, but it returns: null

var percentage = window.frames['data'].document.getElementById('weergave_percentage');
alert(percentage);

What am I doing wrong and how can I do what I want?

Note: the span containing the data, only contains numbers (float), and no other HTML formatting of any kind. Also, I've put the piece of javascript after the code for the iFrame, to make sure the iFrame is loaded when I try to get the data from the iFrame. Also, the iFrame's src is on the same domain as the main page.

1 Answer 1

8

If iframe src links to other domain than the one your pages is displayed from - then you can't get that data (browsers prevernt cross-site scripting).

Other than that - this could should work:

$('iframe').contents().find('#weergave_percentage').html();
Sign up to request clarification or add additional context in comments.

2 Comments

That's a good thing to know, though the iFrame is on the same domain as the main page.
Oh I see you edited your message: That works perfectly! I noticed that I had to delay the javascript function a bit using setTimeout, so it could read the iFrame data, but that is no problem at all. Thanks!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.