尝试选择元素后的下一个跨度

ash*_*hfp 1 xpath css-selectors selenium-webdriver

尝试创建 CSS 选择器或 XPATH 选择器,它将在给定元素 ID 之后查找下一个 span 元素(不一定立即)。

我可以使用 CSS '+' 来选择紧接在元素之后的下一个跨度,但是如果跨度不是紧接在元素之后,则这将不起作用。

#email + span[class*='jsonform-errortext']
Run Code Online (Sandbox Code Playgroud)

如果跨度直接位于输入元素之后,这将起作用,但在下面的示例中它将不起作用。

<div>
    <input type="text" class="c-form-text-input user-success" name="email"  id="email" maxlength="100" required="required">
</div>
<span class="help-block jsonform-errortext" style="display:none;"></span>
Run Code Online (Sandbox Code Playgroud)

And*_*son 5

您可以尝试下面的 XPath 来获取下一个跨度,即使它不是同级跨度:

'//*[@id="email"]/following::span[contains(@class, "jsonform-errortext")]'
Run Code Online (Sandbox Code Playgroud)