如何使用Javascript选择SeleniumWebDriver中的最后一个元素?
我创建了一个脚本来验证是否成功添加了元素。添加的元素总是在页面的末尾,或者成为不同分区中的最后一个元素。我使用的是SeleniumWebDriver和javascript。下面是HTML代码如何使用Javascript选择SeleniumWebDriver中的最后一个元素?,javascript,selenium,selenium-webdriver,css-selectors,webdriver,Javascript,Selenium,Selenium Webdriver,Css Selectors,Webdriver,我创建了一个脚本来验证是否成功添加了元素。添加的元素总是在页面的末尾,或者成为不同分区中的最后一个元素。我使用的是SeleniumWebDriver和javascript。下面是HTML代码 <div class="row"> <div class="form-group col-sm-2 col-xs-12"> <label>Entity Name</label> <i
<div class="row">
<div class="form-group col-sm-2 col-xs-12">
<label>Entity Name</label>
<input value="ttax" class="form-control entity-name" disabled="">
</div>
</div>
<div class="row">
<div class="form-group col-sm-2 col-xs-12">
<label>Entity Name</label>
<input value="Room" class="form-control entity-name" disabled="">
</div>
</div>
但我犯了个错误
element.last()不是函数
有人能帮我吗?我在javascript中找不到有关SeleniumWebDriver的参考资料,其中大多数使用java 这里,当您想要使用最后一个或第一个元素时,我们必须获得一个元素数组。我们可以使用findElement代替findElement
let new_entity = await driver.findElements(By.css("..")).last();
让entity_value=等待新的_entity.getAttribute('value');
expect(实体值).to.be.eq(实体名称) 这里,当您想要使用最后一个或第一个元素时,我们必须获得一个元素数组。我们可以使用findElement代替findElement
let new_entity = await driver.findElements(By.css("..")).last();
让entity_value=等待新的_entity.getAttribute('value');
expect(实体值).to.be.eq(实体名称) 由于添加的元素始终成为验证添加元素的最后一个元素,因此您需要找到父元素的最后一个子元素,该子元素未在问题的HTML中显示。因此,要定位最后一个子项
,您可以使用以下基于
- 使用css:
由于添加的元素始终成为验证添加元素的最后一个元素,因此您需要找到父元素的最后一个子元素,该子元素未在问题的HTML中显示。因此,要定位最后一个子项
,您可以使用以下基于
- 使用css:
我们已经在同一问题上发表了文章,请在此处查找。我们已经在同一问题上发表了文章,请在此处查找。我尝试使用您的,但出现错误invalidSelector错误:无效选择器:指定了无效或非法的选择器。
我尝试使用您的,但出现错误invalidSelector错误:无效选择器:无效或无效选择器指定了非法选择器
我仍然无法获取最后一个元素,我获取了第一个元素,我想获取“Room”。我将代码片段附在我的帖子上,而不是图片上。你能用基于文本的HTML更新问题吗?你需要提供你不想要的第一个元素的HTML,这样我们就可以调整定位器,最好是与第一个元素的父元素.HTML一起使用let entity_last_block=wait driver.findElement添加解析(By.css('div.card.card实体:最后一个子项'))
作为家长。谢谢,debanjanBI仍然无法得到最后一个元素,我得到了第一个元素,我想得到“房间”。我在图片的帖子上附上了代码片段。你能用基于文本的HTML更新问题吗?你需要提供你不想要的第一个元素的HTML,这样我们可以调整定位器,最好是沿着wi第一个元素的父元素.html使用let entity_last_block=wait driver.findElement(By.css('div.card.card entity:last child'))作为父元素添加解析。谢谢,debanjanB
let new_entity = await driver.findElement(By.css("immediateParentTag div:last-child > div.form-group.col-sm-2.col-xs-12 > input"))