直接用driver.findElement()可以找到元素,但是操作就出问题,非要先定位到表单form,再定位元素,层级定位再操作才不会报错
确认这个form下的元素都是这样的话,使用层级定位,可以解决这个问题
WebElement form1=driver.findElement(By.id("profile"));
WebElement job=form1.findElement(By.id("job"));
这种情况通常是没留意是否有多个元素相同名字的情况
后来查了下,确实有2个name为job的元素,但是因为我们用findElement,不是用findElements,所以会出现可以找到元素,但是由于找到的那个元素是隐藏的不可操作的,所以就出现操作失效的情况