首页 > 解决方案 > 通过部分相等的 id/class 值定位多个元素

问题描述

我正在为一件对你们中的一些人来说显而易见的事情而苦苦挣扎。假设我有一个 HTML 元素数组,例如:

<tr> id=item-1 ... </tr>
<tr> id=item-2 ... </tr>
<tr> id=item-3 ... </tr> etc.

我想做的是编写一个 TestCafe 选择器,它将通过 id "item-" 找到整个元素表。任何人都可以回答如何做到这一点?

一个简单的

NAME_OF_SELECTOR = Selector('tr').withAttribute('id', 'item-');

不是那样工作的;它需要完整的名称 id。

标签: testcafe

解决方案


你已经接近你想要达到的目标了。withAttribute方法还接受正则表达式,您可以像这样使用它:

const myTableRowsSelector = Selector('tr').withAttribute('id', /^item-/);

作为替代方案,您还可以执行以下操作:

const myTableRowsSelector = Selector("tr[id^='item-']");

第二个例子的灵感来自这篇文章


推荐阅读