首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Atata -如何选中表中的隐藏复选框?

Atata -如何选中表中的隐藏复选框?
EN

Stack Overflow用户
提问于 2018-02-14 16:45:27
回答 1查看 222关注 0票数 1

我正在使用Atata框架并在下面的场景中工作-- TD元素中有一个带有复选框的表。我希望能够在复选框上调用Click()方法,但无法使它正常工作。

截断后的HTML如下所示:

代码语言:javascript
复制
<table data-v-c4547572="" class="invGrid">
        <tr data-v-c4547572="" row-id="3ed5bcf4-473d-43ae-991a-ffe36d5e0a53" class="row-index-0">
            <td data-v-c4547572="" class="column-index-0 checkbox-col">
                <input data-v-c4547572="" type="checkbox" element-id="3ed5bcf4-473d-43ae-991a-ffe36d5e0a53" class="">
                <label data-v-c4547572="" for="3ed5bcf4-473d-43ae-991a-ffe36d5e0a53"></label>
            </td>
            <td data-v-c4547572="" class="column-index-1">
                <span data-v-c4547572="" class="val-name">Some text</span>
                <span data-v-c4547572="" class="arrow pull-right dsc"></span>
            </td>
        </tr>
    </tbody>
</table>

我使用的代码是:

代码语言:javascript
复制
// The page class:

[FindByCss(".invGrid")]
public Table<GroupsRow, Page> Inventory { get; set; }

// The row class:

public class GroupsRow : TableRow<Page>
{
    [FindByIndex(0)]
    public CheckBox<Page> CheckBox { get; set; }

    [FindByCss(".val-name")]
    public Text<Page> Text { get; set; }
}

另外,在复选框上调用Exists()会产生false:

代码语言:javascript
复制
inv.CheckBox.Exists(); // false

知道如何使复选框运行吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-15 08:26:32

我可以猜到您的复选框实际上是隐藏的,<label>被用作自定义呈现的包装器。由于Atata中的几乎所有控件默认都在寻找可见元素,因此可以指定Visibility

代码语言:javascript
复制
[FindByIndex(0, Visibility = Visibility.Any)]
public CheckBox<Page> CheckBox { get; private set; }

它应该会找到复选框。但是,如果单击它不能工作(因为它可以隐藏),您可以添加一个属性用于label并单击它:

代码语言:javascript
复制
[FindFirst]
public Label<Page> CheckBoxLabel { get; private set; }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48792219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档