WebPagetest Forums
iframe cross domain issue - Printable Version

+- WebPagetest Forums (https://www.webpagetest.org/forums)
+-- Forum: WebPagetest (/forumdisplay.php?fid=7)
+--- Forum: General Discussion (/forumdisplay.php?fid=25)
+--- Thread: iframe cross domain issue (/showthread.php?tid=13197)



iframe cross domain issue - nccgroup_avi - 08-26-2014 11:19 PM

Hello everyone,

I was trying to build the following journey using WPT script and I am unable to fill in the search criteria on step=2. I reckon, this is because the DOM elements belong to a different iframe.

1. Visit http://www.thomascook.com/holidays/city-breaks/
2. Select origin (eg. London)
3. Fill in destination (eg. JFK)
4. Click Search

Any suggestions on how I can set/select values on iFrames in WPT?

Thanks,
Avi


RE: iframe cross domain issue - pmeenan - 08-30-2014 01:26 AM

Can you use the contentWindow member of the iFrame and interact with it? Basically, get it working with script in Chrome's F12-dev tools console and then it should work as an exec command.


RE: iframe cross domain issue - nccgroup_avi - 09-02-2014 01:38 AM

Thanks Pat, following code works:

Code:
combineSteps
navigate    http://www.thomascook.com/holidays/city-breaks/
execAndWait    document.querySelector("[src='http://ww7.thomascook.com/city-breaks/Iframe.html']").contentWindow.document.getElementsByClassName('custom-select-option')[3].click()
execAndWait    document.querySelector("[src='http://ww7.thomascook.com/city-breaks/Iframe.html']").contentWindow.document.querySelector("[name='airport_selection_panel:arrivalPointContainer:arrivalAirportPanel:inputFra​gment:arrivalPoint']").value = 'JFK'
execAndWait    document.querySelector("[src='http://ww7.thomascook.com/city-breaks/Iframe.html']").contentWindow.document.querySelector("[name='checkInDate']").value = '08/10/14'
ignoreErrors    1
execAndWait    document.querySelector("[src='http://ww7.thomascook.com/city-breaks/Iframe.html']").contentWindow.document.querySelector("[name='searchButton']").click()