仅当它具有 "aria-checked ="true 时我才需要单击此输入"
I need to click this input only if it has "aria-checked ="true"
只有当输入 "aria-checked ="true 时我才需要单击此输入
<input class="mat-checkbox-input cdk-visually-hidden" type="checkbox" id="mat-checkbox-131-input" tabindex="0" aria-checked="true" style="" xpath="1">
Ruby:
aria_checked = true
if aria_checked = true
impressora_etiqueta = "//mat-checkbox[@id='mat-checkbox-23']/label/div"
page.find(:xpath, impressora_etiqueta).click
end
有很多方法可以做你想做的事 - 最简单的可能是
page.first('#mat-checkbox-23[aria-checked="true"]', minimum: 0)&.click
这将查找具有给定 id 和 aria-checked = "true" 的第一个元素,如果存在则单击它。
注意:您的测试和示例 HTML 中的 ID 不匹配,所以我从您的测试中获取了 ID,并根据需要进行调整。此外,您还显示了 cdk-visually-hidden
的 class——如果这实际上使该元素在页面上不可见,那么这将不起作用,您需要添加更多周围的 HTML更好地描述您的问题(您不能点击不可见的元素)
只有当输入 "aria-checked ="true 时我才需要单击此输入
<input class="mat-checkbox-input cdk-visually-hidden" type="checkbox" id="mat-checkbox-131-input" tabindex="0" aria-checked="true" style="" xpath="1">
Ruby:
aria_checked = true
if aria_checked = true
impressora_etiqueta = "//mat-checkbox[@id='mat-checkbox-23']/label/div"
page.find(:xpath, impressora_etiqueta).click
end
有很多方法可以做你想做的事 - 最简单的可能是
page.first('#mat-checkbox-23[aria-checked="true"]', minimum: 0)&.click
这将查找具有给定 id 和 aria-checked = "true" 的第一个元素,如果存在则单击它。
注意:您的测试和示例 HTML 中的 ID 不匹配,所以我从您的测试中获取了 ID,并根据需要进行调整。此外,您还显示了 cdk-visually-hidden
的 class——如果这实际上使该元素在页面上不可见,那么这将不起作用,您需要添加更多周围的 HTML更好地描述您的问题(您不能点击不可见的元素)