InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression contains(text() 错误消息
InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression contains(text() error message
当 selenium/C# 程序试图单击 Dynamis365 下拉列表中的元素时,我收到此错误消息。
内部异常 1:
InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression contains(text(), 'Submitted') 因为以下错误:
TypeError: Failed to execute 'evaluate' on 'Document': 结果不是节点集,因此无法转换为所需的类型。
(会话信息:chrome=87.0.4280.88)
我的密码是:
internal void SetValues()
{
findByElement.FindByXPath("//span[contains(text(), 'Submission Pending')]").Click();
findByElement.FindByXPath("contains(text(), 'Submitted')").Click();
}
HTML是:
<span id="id-bc19d003-2d6a-43ad-8e1b-566ecbb00647-132-statuscode6-statuscode.fieldControl-pickliststatus-comboBox_text-value" class=" ">Submission Pending</span>
我正在尝试单击 已提交 选项,但 HTML 中没有显示:DropDownList
注意:其他下拉列表选项不会显示在html中。只有在做出选择 (Submitted) 后,它才会显示在 html 中(替换 Submission Pending")
Submission Pending
Submitted clicked
您确定页面已完全加载吗?您是否阅读过文档,特别是 'waits' 部分(link 下面的 python 版本)。我遇到了这个问题,只需在代码中延迟 5 秒,它就可以正常工作。
https://selenium-python.readthedocs.io/waits.html
或者,您可能会发现通过 id 而不是 XPath 更容易定位元素
FindByXPath("contains(text(), 'Submitted')")
这不是有效的 XPath 表达式!所有 XPath 都必须以斜杠 /
字符开头。也许你的意思是:
FindByXPath("//*[contains(text(), 'Submitted')]")
下面的代码行有效:
findByElement.FindByXPath("//*[./text()='Submitted']").Click();
当 selenium/C# 程序试图单击 Dynamis365 下拉列表中的元素时,我收到此错误消息。
内部异常 1: InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression contains(text(), 'Submitted') 因为以下错误: TypeError: Failed to execute 'evaluate' on 'Document': 结果不是节点集,因此无法转换为所需的类型。 (会话信息:chrome=87.0.4280.88)
我的密码是:
internal void SetValues()
{
findByElement.FindByXPath("//span[contains(text(), 'Submission Pending')]").Click();
findByElement.FindByXPath("contains(text(), 'Submitted')").Click();
}
HTML是:
<span id="id-bc19d003-2d6a-43ad-8e1b-566ecbb00647-132-statuscode6-statuscode.fieldControl-pickliststatus-comboBox_text-value" class=" ">Submission Pending</span>
我正在尝试单击 已提交 选项,但 HTML 中没有显示:DropDownList
注意:其他下拉列表选项不会显示在html中。只有在做出选择 (Submitted) 后,它才会显示在 html 中(替换 Submission Pending") Submission Pending Submitted clicked
您确定页面已完全加载吗?您是否阅读过文档,特别是 'waits' 部分(link 下面的 python 版本)。我遇到了这个问题,只需在代码中延迟 5 秒,它就可以正常工作。
https://selenium-python.readthedocs.io/waits.html
或者,您可能会发现通过 id 而不是 XPath 更容易定位元素
FindByXPath("contains(text(), 'Submitted')")
这不是有效的 XPath 表达式!所有 XPath 都必须以斜杠 /
字符开头。也许你的意思是:
FindByXPath("//*[contains(text(), 'Submitted')]")
下面的代码行有效:
findByElement.FindByXPath("//*[./text()='Submitted']").Click();