Quantcast
Channel: AutoIt v3 - General Help and Support
Viewing all articles
Browse latest Browse all 12506

Problems accessing iFrame - IE version dependent?

$
0
0
Please help with the following problem.
I have written this following script to retrieve data kept in an iFrame (DATA_IFRAME) which is inside a frame (MAIN_FRAME) on page "Data_Page".

#include <IE.au3>
Local $o_ie = _IEAttach("Data Page")
Local $o_frame = _IEFrameGetObjByName($o_ie, "MAIN_FRAME")
Local $o_iframe = _IEFrameGetObjByName($o_frame, "DATA_IFRAME")
$text = _IEBodyReadHTML($o_iframe)
ConsoleWrite($text & @CRLF)


The script which I stripped of all error checking and diagnostics works as it should, but only on my development system running Windows 7 and IE9. It does not work on my production server which runs Windows 2003 and IE8. It also fails if I switch my IE9 into 'compatibility view'.

The script fails on this line:
Local $o_iframe = _IEFrameGetObjByName($o_frame, "DATA_IFRAME")
and produces the following messages:
C:\Program Files (x86)\AutoIt3\Include\IE.au3 (813) : ==> The requested action with this object has failed.:
If $oFrame.name = $s_Name Then Return SetError($_IEStatus_Success, 0, $oTemp.frames($s_Name))
If $oFrame.name = $s_Name Then Return SetError($_IEStatus_Success, 0, $oTemp.frames($s_Name)^ ERROR

Examining the HTML as returned from MAIN_FRAME I noticed that if I run IE9 the name value inside the <iframe> tag is in quotes (name="DATA_IFRAME") while under IE8 or IE9cv it is not (name=DATA_IFRAME).
I tried to upgrade IE on the server but IE9 for Windows Server 2003 it is not offered.
Any thoughts?
Thanks in advance.

Viewing all articles
Browse latest Browse all 12506

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>