我想选择元素属性的值。例如,如果我有一个输入元素
<input type="text" name=myInput value="100">
我可以使用input[name='myInput']
找到它,但如何使用css选择器获取它的值?
BTW,我正在尝试使用css选择器在Selenium中执行此操作
答案 0 :(得分:8)
您可能想要解释您尝试对该值执行的操作。例如,我有以下CSS来显示打印样式表中'#content'元素中链接的文本:
#content a:link:after, #content a:visited:after {
content: " (" attr(href) ") ";
font-size: 90%;
}
#content a[href^="/"]:after {
content: " (http://example.com" attr(href) ") ";
}
答案 1 :(得分:2)
如果在Perl中使用WWW :: Selenium,则只需:
my $val = $selenium->get_value("css=input[name='myInput']");
如果使用其他语言,则Selenium库应支持get_value函数/方法。
答案 2 :(得分:1)
您可以使用以下内容:
WebDriver driver=new FirefoxDriver();
String nameAttribute=driver.findElement(By.cssSelector("Your css selector")).getAttribute("name")
答案 3 :(得分:0)
您最喜欢的JavaScript库应该有一些方法可以做到这一点:
的jQuery
$("input[name=myname]").val()
CSS seloctors的原型方法是$$()iirc。
对于此示例,您还可以使用本机document.getElementsByName()方法。
答案 4 :(得分:0)
在Java Selenium WebDriver中,有两种方法可以做到这一点
driver.findElement(By.name( “myInput”))。gettext的() driver.findElement(By.name( “myInput”))。的getAttribute(值)