How to extract attribute values using css selectors?
I want to select the values of attributes of an element. e.g If I have an input element
<input type="text" name=myInput value="100">
I can locate it using input[name='myInput'], but how do I get the value 开发者_JAVA技巧of it using a css selector?
BTW, I am trying to do this in Selenium using css selectors
You might want to explain what you're trying to do with the value. For instance, I have the following CSS to display the text of the links in the '#content' element in my print style sheet:
#content a:link:after, #content  a:visited:after {
    content: " (" attr(href) ") ";
    font-size: 90%;
}
#content a[href^="/"]:after {
    content: " (http://example.com" attr(href) ") ";
}
If in Perl using WWW::Selenium then it's simply:
my $val = $selenium->get_value("css=input[name='myInput']");
If using another language then the Selenium library should support a get_value function/method.
You could use the following:
 WebDriver driver=new FirefoxDriver();
    String nameAttribute=driver.findElement(By.cssSelector("Your css selector")).getAttribute("name")
Your favorite JavaScript library should have some way to do this:
jQuery
$("input[name=myname]").val()
Prototype's method for CSS seloctors is $$() iirc.
For this example you could also use the native document.getElementsByName() method aswell.
In Java Selenium WebDriver there are 2 ways to do this
driver.findElement(By.name("myInput")).getText() driver.findElement(By.name("myInput")).getAttribute(value)
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论