假设我有这个输入元素:
<input id="email" value="some@email.com">
我执行这段代码:
var emailInputField = driver.FindElement(By.Id(email));
var email = emailInputField.GetAttribute("value");
emailInputField .InputField.Clear();
var empty = emailInputField.GetAttribute("value");
我希望变量 empty 为 empty 但它包含与 email 相同的文本,因为我清除了文本。我意识到 value 属性与输入的文本不同步,所以我的问题是,如何找出文本框中当前的文本?
最佳答案
因为您已经选择了该元素并将 emailInputField
分配给它,所以 empty 将引用它。如果您在清除后重新分配 emailInputField
然后获取它应该为空的值。所以:
var emailInputField = driver.FindElement(By.Id(email));
var email = emailInputField.GetAttribute("value");
emailInputField .InputField.Clear();
var empty = driver.FindElement(By.Id(email)).GetAttribute("value");
关于c# - 使用 Selenium 获取输入字段的当前文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31452058/