无法使用 javascript 单击已过滤的元素
Unable to click on filtered element using javascript
无法点击筛选的元素。
$$("app-filters-manager app-salesflow-panel mat-expansion-panel").filter(element => {
return element.getText() === "face";
}).click();
我收到以下错误
$$(...).filter(...).click is not a function
.filter
returns 一个元素数组,而不是一个元素。
在调用 .click
之前,您需要 select 列表中的一个元素:
.filter(...)[0].click();
除了@nick 已经解释过的,您还可以使用 find
这将是一个更有效的方法来实现您正在寻找的东西。
$$("app-filters-manager app-salesflow-panel mat-expansion-panel").find(element => {
return element.getText() === "face";
}).click();
filter
方法将遍历所有元素,即使在找到一个满足条件的元素之后,这与 find 不同,后者会在第一次出现时停止。
如果 none 个元素满足条件,这两个都将 return undefined 并且当您尝试执行 click on undefined 时将抛出错误。
无法点击筛选的元素。
$$("app-filters-manager app-salesflow-panel mat-expansion-panel").filter(element => {
return element.getText() === "face";
}).click();
我收到以下错误
$$(...).filter(...).click is not a function
.filter
returns 一个元素数组,而不是一个元素。
在调用 .click
之前,您需要 select 列表中的一个元素:
.filter(...)[0].click();
除了@nick 已经解释过的,您还可以使用 find
这将是一个更有效的方法来实现您正在寻找的东西。
$$("app-filters-manager app-salesflow-panel mat-expansion-panel").find(element => {
return element.getText() === "face";
}).click();
filter
方法将遍历所有元素,即使在找到一个满足条件的元素之后,这与 find 不同,后者会在第一次出现时停止。
如果 none 个元素满足条件,这两个都将 return undefined 并且当您尝试执行 click on undefined 时将抛出错误。