Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过浏览器控制台查看最后一个选定元素的XPath?_Javascript_Html_Xml_Selenium_Xpath - Fatal编程技术网

Javascript 通过浏览器控制台查看最后一个选定元素的XPath?

Javascript 通过浏览器控制台查看最后一个选定元素的XPath?,javascript,html,xml,selenium,xpath,Javascript,Html,Xml,Selenium,Xpath,我有一个XPath: $x((“//div[@class='ag-header-row']))[1] 这给了我一个divs数组。 末尾的[1]是必需的,因为还有其他行包含此类 我知道有关[last()]的信息,但不确定要将其插入何处 如何修改XPath以选择最后一个div 下面是元素的屏幕截图您对XPath表达式的调用 $x(("//div[@class='ag-header-row']"))[1] 表示选择具有给定类属性值的所有div元素,在JavaScript中,XP

我有一个XPath:

$x((“//div[@class='ag-header-row']))[1]
这给了我一个
div
s数组。 末尾的
[1]
是必需的,因为还有其他行包含此类

我知道有关
[last()]
的信息,但不确定要将其插入何处

如何修改XPath以选择最后一个
div


下面是元素的屏幕截图

您对XPath表达式的调用

$x(("//div[@class='ag-header-row']"))[1]
表示选择具有给定
属性值的所有
div
元素,在JavaScript中,XPath之外的元素取第二个(因为JavaScript数组从0开始,不像XPath那样从1开始)

不能将
[1]
替换为
[last()]
,因为
last()
是一个XPath函数,而不是JavaScript函数

如果希望最后一个这样的
div
[last()]
移动到XPath中:

$x("(//div[@class='ag-header-row'])[last()]")
另见:
  • (请参见“基于多个列出的类中的一个类属性值进行选择的习惯用法”。)


我能够通过合并对父元素的引用来求解


$x(“//div[@class='ag-header-container']//div[@class='ag-header-row']]/div[last()]”
试试
(“//div[@ag-header-row']]”[count(//div[@class='ag-header-row'])”)
谢谢您的回复@JaSON我在谷歌控制台上试过,但出现了“count is not defined”错误。我希望使用[last()],因为我也想使用[first()],XPath中没有像
first
这样的运算符。请尝试
“(//div[@class='ag-header-row'])[last()]”
如果查看我的路径并返回一个div数组,则末尾有一个[1]。获取数组需要[1]。你的建议不起作用,因为它没有[1]。我不知道如何添加[last()]@JaSON:对,正如我已经说过的那样,
[1]
是在JavaScript上下文(在浏览器控制台中)而不是XPath中应用的。选择正确的行需要[1]。我感兴趣的那一排是那个班的第二排。然后,我希望该行中的最后一个元素使用简化的HTML或XML示例创建一个文本,而不是作为图像来传达您的需求——您的散文描述非常不清楚。