27

I need to access and element from within a frameset frame. For example if I have the following markup:

<frameset rows="33%,33%,*">
  <frame src="frame1.html"/>
  <frame src="frame2.html"/>
  <frame src="frame3.html"/>
</frameset>

How can I get some element from one of the child frames? I have tried this:

window.frames[1].getElementById('someElementId')

This results in a type error :

getElementById() is not a function.

Can someone assist?

Thanks!

3 Answers 3

32

You need to get the Document object for the frame.

window.frames[1].document.getElementById('someElementId')
Sign up to request clarification or add additional context in comments.

Comments

11
<frameset rows="33%,33%,*">
<frame id="demo" src="frame1.html"/>
<frame src="frame2.html"/>
<frame src="frame3.html"/>
</frameset>

Answer:

document.getElementById("demo").contentDocument.documentElement.innerHTML;

2 Comments

document.getElementById("demo") returns null !!
@Heitor, my quick guess is that you didn't nest things in document.addEventListener("DOMContentLoaded", function () {/*code here*/});, which might be useful. That said, I get that document.getElementById("demo").contentDocument is null even with the wrapper, though document.getElementById("demo") does return <frame id="demo" src="frame1.html"> using Canary. Weirdness is afoot.
9

You can try using framename as well

window.frames['frame_name'].document.getElementsByName('element_name');   

2 Comments

this does not return windows object hence will not work while window.frames[1] return windows object hence works.
getting frame by name here which is a string i.e frame_name , gave me an error , element implicitly has an 'any' type because index expression is not of type 'number' , had to set suppressImplicitAnyIndexErrors to true in tsconfig.json

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.