我正在使用C#和Selenium Web驱动程序。问题是我找不到一个没有ID值的开始按钮。
我为该对象找到的唯一标识符是'value=“74”‘文本。
按钮的HTML如下所示:
<div class="product-item-inner">
<div class="product">
<h3>Cyber Liability</h3>
<p class="carrier-about">Lloyd's, London - AM BEST "A" (Excellent)</p>
</div>
<form action="/index.php?c=pcs.integrate" method="POST">
<input value="74" name="product_id" type="hidden">
<input value="" name="insured_id" type="hidden">
<input value="" name="contract_class_id" type="hidden">
<a href="#" class="product-information">Product Information</a>
<a class="tile-button start" href="#">Start</a>
</form>
</div>
driver.findElement(by.xpath(“(//input[@name='PRODUCT_ID'][@value='74'])”)).click();
提前致谢
如果要单击上面文本“Cyber Lability”的“Start”按钮,您可以尝试以下XPath:
//h3[.='Cyber Liability']/ancestor::div[@class='product-item-inner']//a[.='Start']
这将定位innerHTML/text为start
的a
元素,该元素是div
元素的后代节点,该元素具有class
属性为product-item-inner
元素的祖先,该元素具有innerHTML/text为CyberLability
。
问题内容: 我对Jquery还是很陌生,所以这可能是一个简单的问题,但是有一种方法可以隐藏表单上的提交按钮,直到所有字段都经过验证。 验证将需要是“键入时”解决方案。基本上,我有3个字段- 名字,姓氏和电子邮件。我希望提交按钮保持隐藏状态,直到填写了两个“名称”字段,并且在电子邮件字段中输入了有效的电子邮件地址。 表单本身使用AJAX将表单数据输入数据库。表单位于一个灯箱中,单击提交按钮后,该灯箱
问题内容: 我有一个按钮 我无法通过ID或名称找到它,需要提交表格。 我尝试这样做:或者,WebDriver在每个元素上都有便捷的方法“提交”。如果在表单中的元素上调用此方法,则WebDriver将在DOM上移动,直到找到封闭的表单,然后在该表单上调用Submit。如果元素不是表单,则将引发NoSuchElementException:element.submit() http://seleniu
问题内容: 我已经看到,在其他类型的对话框窗口(例如“ showConfirmDialog”)中也可以做到这一点,在其中可以指定按钮的数量及其名称。但是使用“ showInputDialog”时是否可以实现相同的功能?我似乎在API中找不到这种类型的东西。也许我只是想念它,但是任何帮助都值得赞赏。 问题答案: 只需将自定义JPanel添加为消息即可:
我有一个按钮:当我点击它时,它会发送一个ajax请求,然后,javascript代码在完成后将类“隐藏”添加到这个按钮上。 我怎么能等待ajax请求结束?发送单击命令后,我认为Selenium应该检测到按钮中何时添加了“隐藏”类,但我不知道如何检测。 你能帮我吗? 它不工作(我有一个超时):
我正在尝试隐藏按钮div和显示一个隐藏的div后,一个表单按钮已经被点击,加上延迟提交/重定向。下面是我想出的办法,但似乎没有100%奏效。 null null 任何建议都非常感谢
问题内容: 我正在使用Appium自动化Android应用程序,我们需要单击带有动态ID的按钮。该按钮具有ID“ PROFILEBUTTON”或ID“ PROFILEMAILBUTTON”。除了坐标外,还有什么可以用来自动单击此按钮的? 问题答案: 为了鉴定与元素 动态ID 要么 PROFILEBUTTON 或 PROFILEMAILBUTTON 可以使用与以下通配符cssSelector: ^: