使用Selenium获取frm1表单中input元素的name和value属性
正确获取frm1表单内所有input元素的name和value属性
你的问题在于直接给<form>元素调用GetAttribute("value"),但表单本身并没有value属性,你需要先定位到表单内的所有<input>元素,再逐个提取它们的name和value属性。
以下是修正后的C#代码实现:
// 定位frm1表单 IWebElement frm1 = webDriver.FindElement(By.Id("frm1")); // 获取表单内所有input元素 IReadOnlyCollection<IWebElement> inputs = frm1.FindElements(By.TagName("input")); // 遍历每个input,提取name和value foreach (IWebElement input in inputs) { string inputName = input.GetAttribute("name"); string inputValue = input.GetAttribute("value"); // 可根据需求处理属性值,比如打印或存储 Console.WriteLine($"Name: {inputName}, Value: {inputValue}"); }
如果只需获取特定name的input(比如Token),可以直接定位该元素:
IWebElement tokenInput = frm1.FindElement(By.Name("Token")); string tokenValue = tokenInput.GetAttribute("value");
内容的提问来源于stack exchange,提问作者Tagyoureit
相关产品推荐
相关产品推荐

