0

我有一些表:

    Title 1        | Title 2        | Title 3        |
    --------------------------------------------------
    string value 1 | string value 2 | string value 3 |
    --------------------------------------------------
    string value 4 | string value 5 | string value 6 |

和一些步骤:
“然后单击它的 <name>”,其中 <name> 可以是第一列中的任何内容。

那么,我怎样才能找到需要的元素并点击它呢?

表代码

<div id="grid" class="k-grid k-widget" data-role="grid" tabindex="0" style="">
<div class="k-grid-header" style="padding-right: 17px;">
<div class="k-grid-header-wrap">
<table cellspacing="0">
<colgroup>
<col style="width: 30px;">
<col style="width: 300px;">
<col>
<col style="width: 200px;">
</colgroup>
<thead>
<tr>
<th class="k-header" data-title="ID" data-field="id">ID</th>
<th class="k-header" data-title="Наименование" data-field="name" data-role="sortable" data-dir="asc">
<a class="k-link" href="#">

第二部分

Наименование
<span class="k-icon k-arrow-up"></span>
</a>
</th>
<th class="k-header" data-title="Описание" data-field="description">Описание</th>
<th class="k-header" data-field="undefined" data-role="sortable">
</tr>
</thead>
</table>
</div>
</div>

第三部分

    <div class="k-grid-content">
<table class="k-focusable k-selectable" cellspacing="0" data-role="selectable">
<colgroup>
<col style="width: 30px;">
<col style="width: 300px;">
<col>
<col style="width: 200px;">
</colgroup>
<tbody>
<tr data-uid="72c59bdf-8622-43c6-91bf-7a2a05ca59b1">
<td>5</td>
<td>1</td>
<td>1</td>
<td>
</tr>

第四部分

<tr class="k-alt" data-uid="f8d1ef8c-07b0-4e79-9c42-4c6db2d943d0">
<td>6</td>
<td>1</td>
<td>1</td>
<td>
</tr>
<tr data-uid="241a4a4b-7147-46fe-ad55-f865de4a8285">
<td>8</td>
<td>789</td>
<td>987</td>
<td>
</tr>
<tr class="k-alt" data-uid="73bf8ea7-c4f0-49f9-8e8b-41d88b13212d">
<td>7</td>
<td>test</td>
<td>test</td>
<td>
</tr>

第 5 名

<tr data-uid="63db0ec1-5a5a-40be-9fa0-b467ff2b43d3">
<td>4</td>
<td>Второй процесс</td>
<td>null</td>
<td>
</tr>
<tr class="k-alt" data-uid="68fe2d62-5ccb-472b-b7b9-8ee95159deff">
<td>1</td>
<td>Заявление1</td>
<td>управление заявлениями</td>
<td>
</tr>
</tbody>
</table>
</div>

6日

<div class="k-pager-wrap k-grid-pager" data-role="pager">
<ul class="k-pager k-reset k-numeric">
<li>
<span class="k-state-active">1</span>
</li>
</ul>
</div>
</div>
4

1 回答 1

0

我部分理解了你想要做什么。您想根据文本值单击页面上的元素。为此,您必须在页面上找到带有您要单击的文本的元素。例如-如果您想单击带有 text = "Mike" 的元素,请使用以下代码-

WebElement ele = driver.FindElement(By.Name("Mike"));

现在您将获得一个带有文本“Mike”的 WebElement 以单击。

所以现在——ele.click();

我要提到的另一件事是您的 HTML 代码格式不正确(即没有正确的开始和结束标记)。使用 selenium 时,拥有格式良好的 HTML 将使与网页上的元素交互更容易。

于 2012-07-02T15:00:01.300 回答