无法单击单选按钮,其中单选按钮更改了Web UI页面上Selenium Web Driver Java的顺序



我正在尝试单击更改UI页面上顺序的单选按钮。但是有一件事是固定的,我想单击的单选按钮位于文本旁边"Reissue ID Card"

以下是网页 HTML:

<tbody>
<tr class="gridcell">
<tr class="gridcell">
<tr class="gridcell">
<td valign="bottom" style="border-right: 1px solid rgb(160, 160, 160);">
<td width="51" align="center" style="width:46px;">
<input id="rdbSelectAction" type="radio" onclick="fnRowSelected(this);" value="37089~8/8/2018 12:00:00 AM" name="rdbSelectAction" oldchecked="false">
</td>
<td width="140"> Reissue ID Card </td>
<td width="82"> 8/6/2012 8:07:15 AM </td>
<td width="82"> 8/8/2018 12:00:00 AM </td>
<td width="89"> Directory 2018 </td>
<td width="94"> Closed Unsuccessful - Need to Reissue ID Card Closed Unsucc </td>
<td width="103"> Admin </td>
<td width="78"> 6578 </td>
<td width="129"> 91890 </td>
<td width="330"> 000004503701/01/2012 </td>

我正在使用从上面的HTML创建的以下xpath,但没有运气:

//tr[contains(@class, 'gridcell')]/td[contains(text(), 'Reissue ID Card')]

将您的元素存储到列表中并找到完美匹配并单击您的元素。

WebElement radioButton = driver.findElement(By.Xpath("Your Xpath"));
String radioButtonName = "Reissue ID Card";
List<WebElement> listRadioButton = driver.findElements(radioButton);
System.out.println("List of Radio Buttons are available " + listRadioButton);
Iterator<WebElement> iter = listRadioButton.iterator();
System.out.println("Iterator Print" + iter);
while (iter.hasNext()) {
WebElement we = iter.next();
System.out.println("Web Element We " + we.getText());
if (we.getText().equals(radioButtonName)) {
we.click();
}
}

我从上述问题中可用的HTML创建了以下xpath,并且能够单击动态位置更改单选按钮。

//tbody/tr/td[contains(text(),'Reissue ID Card')]/preceding-sibling::td[1]/*[@id='rdbSelectAction']

最新更新