I would like to select the second or nth option from a select element with the IE driver using css selector.
I tried the following but it doesn’t work.
option:nth-child(1)
If I provide a value, it works, but I don’t know the value all the time so I like to select by nth-child.
option[value=’1′]
the error i got on IE8 is javascript error:
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; MS-RTC LM 8; .NET4.0E; Tablet PC 2.0)
Timestamp: Wed, 26 Sep 2012 23:34:46 UTC
Message: Invalid argument.
Line: 30
Char: 96
Code: 0
URI: http://blah/foo.aspx
This is perfectly expected. Internet Explorer 8 supports
querySelector()andquerySelectorAll(), so the IE driver relies on the browser’s native implementation of CSS selectors, which means you’re limited to whatever level of CSS selector support is provided by the browser. In the case of IE 8, the browser does not support CSS3 selectors, so the IE driver will not work with any CSS3 selectors. Of course,nth-child()is part of the CSS3 specification, so using the IE driver with IE 8 will not supportnth-child(). As for what selectors are supported by which browsers, there is a great reference at quirksmode.org which provides a nice summary of each of the selectors and which browsers they are supported in.