Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

getElementById problem in Google Chrome

I have this simple line

alert(window.parent.frames[0].document.getElementById('textToSearch').value);

I have 2 frames, first with a text field with id 'textToSearch' I want to get the value of the text field in the second frame The line above is on the html file from second frame I get this error only in Google Chrome, in IE or FF works fine.

Uncaught TypeError: Cannot call method 'getElementById' of undefined

Any ideas?

Thanks in advance

like image 434
tinti Avatar asked Sep 27 '10 12:09

tinti


2 Answers

Finally i figure what was the problem. I try the code from above on Google Chrome on a system local file. Due the security settings of Google Chrome this usecase is impossible. If i move all files on a web server this will work as a charm Thanks all for your support, this thread can be closed now

like image 87
tinti Avatar answered Oct 03 '22 09:10

tinti


Use contentWindow.document instead of document:

var frame = window.parent.frames[0].contentWindow;
alert(frame.document.getElementById('textToSearch').value);

You can also just use contentDocument for most browsers, but not Internet Explorer 7 or older.

  • contentWindow - MSDN
like image 39
Andy E Avatar answered Oct 03 '22 09:10

Andy E