确认元素并转到下一个标签
Confirm Element and go to next tag
我得到了一些包含不同元素的列表,每个元素都有一个删除按钮。我想删除某个Element,所以首先我需要确认Element(Element包含:Test 1,Test2),然后删除Element
<div class="html-replace-container">
<form id="new_supplier_assignment" class="new_supplier_assignment" action="/supplier_assignments" accept-charset="UTF-8" method="post">
<h3 class="supplier-assignment-header progress-active">
<a href="/products/685">Test 1</a>
-
<a href="/companies/13">Test 2</a>
</h3>
<a class="btn btn-danger btn-sm" data-replace-html-container="true" data-confirm="Sind Sie sich sicher?" style="float: right" rel="nofollow" data-method="delete" href="/supplier_assignments/122?owner=Customer">Löschen</a>
我已经知道了:
<tr>
<td>click</td>
<td>xpath=//*[@id='new_supplier_assignment']/..//*[contains(text(), 'Test 1')]/../*[contains(text(), 'Test 2')]</td>
<td></td>
</tr>
我想转到 <a class="btn btn-danger ...>
并单击。
我不能使用 count() 或 indexof()。
您可以使用文本作为定位符:
driver.findelement(by.xpath("//a[contains(text(), 'YOUR TEXT')]")).click()
按钮之间的区别在于文本 'Test 1' 'Test 2' 因此您可以通过文本找到元素并删除它。
先找一个h3
,第一个a
是Test 1
,第二个a
是Test 2
,然后用following-sibling::a
得到删除按钮
xpath: //h3[a[1][text()="Test 1"] and a[2][text()="Test 2"]]/following-sibling::a
如果你不关心哪个 a
是 Test 1
,它可能是第一个或第二个 a
,如果是这样,删除索引 [1] and [2]
,试试在 xpath 下方:
//h3[a[text()="Test 1"] and a[text()="Test 2"]]/following-sibling::a
我得到了一些包含不同元素的列表,每个元素都有一个删除按钮。我想删除某个Element,所以首先我需要确认Element(Element包含:Test 1,Test2),然后删除Element
<div class="html-replace-container">
<form id="new_supplier_assignment" class="new_supplier_assignment" action="/supplier_assignments" accept-charset="UTF-8" method="post">
<h3 class="supplier-assignment-header progress-active">
<a href="/products/685">Test 1</a>
-
<a href="/companies/13">Test 2</a>
</h3>
<a class="btn btn-danger btn-sm" data-replace-html-container="true" data-confirm="Sind Sie sich sicher?" style="float: right" rel="nofollow" data-method="delete" href="/supplier_assignments/122?owner=Customer">Löschen</a>
我已经知道了:
<tr>
<td>click</td>
<td>xpath=//*[@id='new_supplier_assignment']/..//*[contains(text(), 'Test 1')]/../*[contains(text(), 'Test 2')]</td>
<td></td>
</tr>
我想转到 <a class="btn btn-danger ...>
并单击。
我不能使用 count() 或 indexof()。
您可以使用文本作为定位符:
driver.findelement(by.xpath("//a[contains(text(), 'YOUR TEXT')]")).click()
按钮之间的区别在于文本 'Test 1' 'Test 2' 因此您可以通过文本找到元素并删除它。
先找一个h3
,第一个a
是Test 1
,第二个a
是Test 2
,然后用following-sibling::a
得到删除按钮
xpath: //h3[a[1][text()="Test 1"] and a[2][text()="Test 2"]]/following-sibling::a
如果你不关心哪个 a
是 Test 1
,它可能是第一个或第二个 a
,如果是这样,删除索引 [1] and [2]
,试试在 xpath 下方:
//h3[a[text()="Test 1"] and a[text()="Test 2"]]/following-sibling::a