C# 如何在模式中查找动态XPath?

C# 如何在模式中查找动态XPath?,c#,angularjs,selenium-webdriver,xpath,protractor,C#,Angularjs,Selenium Webdriver,Xpath,Protractor,当我尝试编写XPath时,序列从ifame/#document/html中断。我想从我尝试使用的div[@id='zdaasmodalbody']开始,切换到窗口/框架,但没有任何效果 我尝试了这段代码,但工具没有找到元素来标识其XPath: cClickWait("/html/body/app-root/app-nav-menu/nav/a", "XPath"); 您可以使用下面的Xpath //div[@id='zdaasmodalbody']//iframe[@class='ng-sc

当我尝试编写XPath时,序列从
ifame/#document/html
中断。我想从我尝试使用的
div[@id='zdaasmodalbody']
开始,切换到窗口/框架,但没有任何效果

我尝试了这段代码,但工具没有找到元素来标识其XPath:

cClickWait("/html/body/app-root/app-nav-menu/nav/a", "XPath");
您可以使用下面的Xpath

//div[@id='zdaasmodalbody']//iframe[@class='ng-scope']

在对其子元素进行操作之前,需要先切换到框架,如下所示

您可以像这样切换:

driver.SwitchTo().Frame(driver.FindElement(By.Xpath("//div[@id='zdaasmodalbody']//iframe[@class='ng-scope']")));

我将投票结束这个问题,除非你编辑它,我不想点击链接看到图片,把它贴在问题上欢迎来到Stackoverflow。请参阅和。把你面临的问题的更多细节写出来。包括您迄今为止尝试过的相关代码段。我无法发布问题中的图像,我是新用户,因此stackoverflow不允许我。欢迎!请将实际代码张贴(复制/粘贴)到问题正文中,以便我们查看。链接到一个图片不是很有帮助。不是一个完整的答案,而是一个在哪里看的想法-你需要像这里一样先切换到那个iframe
//iframe[@class='ng-scope' and contains(@src,'https://')]
driver.SwitchTo().Frame(driver.FindElement(By.Xpath("//div[@id='zdaasmodalbody']//iframe[@class='ng-scope']")));