我正在使用输入标记,如下所示:
<input type="text" autocomplete="off" class="x-form-field
x-form-text" size="20" name="someField" id="ext-gen1203"
aria-invalid="false" role="textbox"
aria-describedby="textfield-1117-errorEl" aria-required="true"
style="width: 463px;">
我想检索文本字段中的值,我无法使用selenium.getText()命令,因为DOM中没有显示文本,我也无法使用selenium.getValue(),因为标签没有值属性。
如何从输入字段中获取文本?
答案 0 :(得分:4)
我知道这已经过时了,但我有答案,万一有人偶然发现:
在Java中,只需致电getAttribute("value")
在C#中,它是GetAttribute("value")
例如,如果我需要输入元素的文本值,在C#中它看起来像这样:
driver.FindElement(By.XPath("//table[contains(@class, 'role-listing')]/tbody/tr/td/input")).GetAttribute("value")
答案 1 :(得分:1)
也许你可以试试这个
商店| id =“ext-gen1203”| varNameYouWant
文本框内的值不会存储在变量“varNameYouWant”中,以回调您可能使用的值$ {varNameYouWant}
希望这有帮助。
答案 2 :(得分:1)
如果要复制文本输入中的值,隐藏或某个元素。
<input id="from_element" value="this is from value" />
<input id="to_element" value="" />
您需要两个步骤,
1.获取值“from_element”并存储到变量“myVariable”。您可以自己决定变量名称。
storeValue | id=from_element | myVariable
2.使用以下命令将存储的值导入“to_element”。
type | id=to_element | ${myVariable}
希望它也能帮助别人。 :)
答案 3 :(得分:0)
我想如果输入字段不为空,则标记将具有value属性。您应该检查value属性是否存在,然后才能获取其值。