gpt4 book ai didi

javascript - 查找类为 'x' 的元素,忽略类为 'x' 和其他类的元素

转载 作者:行者123 更新时间:2023-11-28 15:15:48 25 4
gpt4 key购买 nike

我正在使用 Selenuim 和 Javascript 来编写我的测试。 DOM 有 4 个元素:

<input class="hidden-element xyz"> , <input class="hidden-element xyz"> , <input class="xyz"> ,和<input class="xyz">

我想查找仅包含 xyz 的元素类,而不是 hidden-element 的类和xyz 。当我说:

if (driver.findElements({css: 'section[title="custom"] > input.xyz'})) {
driver.findElements({css: 'section[title="custom"] > input.xyz'}).then(function(inputs) {
for (i = 0; i < inputs.length; i++) {
inputs[i].sendKeys('Input Text');
}
});
}

它将拉出所有 4 个元素,尝试填充隐藏元素,并破坏测试。我试过:

if (driver.findElements({css: 'section[title="custom"] > input.xyz'}) && !driver.findElements({css: 'section[title="custom"] > input.hidden-element'})) {
driver.findElements({css: 'section[title="custom"] > input.xyz'}).then(function(inputs) {
for (i = 0; i < inputs.length; i++) {
inputs[i].sendKeys('Input Text');
}
});
}

但这也行不通。我也一直在尝试不同的变体,但没有效果。这看起来很简单,但我很难磨练解决方案。有想法吗?

最佳答案

您的选择器应该是:

.xyz:not(.hidden-elem)

这是因为A and not(A and B)有效地倾倒到A and not B

编辑:看来你已经弄清楚了逻辑

关于javascript - 查找类为 'x' 的元素,忽略类为 'x' 和其他类的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34046564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com