I have the following HTML code:
<a href="/search/?p=2&q=move&mt=1"> 2 </a>
I would like to get what is contained in href, ie, I was looking for a command which would give me "/search/?p=2&q=move&mt=1" value for href.
Could someone please help me with the respective command and css locator in selenium, for the above query?
if I have something like:
<a href="/search/?p=2&q=move&mt=1"> 2 </a>
<a href="/search/?p=2&q=move&mt=2"> 3 </a>
Out of these two if I was to get the attribute value for href whose text conatins '2', then how would my css locator synatx look like?
If your HTML consists solely of that one <a>
tag, then this should do it:
String href = selenium.getAttribute("css=a@href");
You use the DefaultSelenium#getAttribute()
method and pass in a CSS locator, an @
symbol, and the name of the attribute you want to fetch. In this case, you select the a
and get its @href
.
In response to your comment/edit:
The part after @
tells Selenium that that part is the name of the attribute.
You should place :contains('2')
before @href
because it's part of the locator, not the attribute. So, like this:
selenium.getAttribute("css=a:contains('2')@href");