首页 > 解决方案 > XPATH,返回特定 div 中的特定元素

问题描述

从下面这个特定的 div 中,我试图获取可用的大小,这是这里的“值”属性:

<input id="swatch-0-s-6072559239" type="radio" name="option-0" value="S" class="">

所以我需要退货:XS、S、M、L、XL

我一直在尝试这种变化:

//div[@class='swatch_options']following-sibling::input@value

但这不起作用。

<div class="swatch clearfix" data-option-index="0"> <div class="option_title">Size</div> <input id="swatch-0-xs-6072559239" type="radio" name="option-0" value="XS" checked="" class=""> <div data-value="XS" class="swatch-element xs-swatch"> <label for="swatch-0-xs-6072559239">
            XS <span class="crossed-out"></span></label></div> <input id="swatch-0-s-6072559239" type="radio" name="option-0" value="S" class=""> <div data-value="S" class="swatch-element s-swatch available"> <label for="swatch-0-s-6072559239">
            S <span class="crossed-out"></span></label></div> <input id="swatch-0-m-6072559239" type="radio" name="option-0" value="M" class=""> <div data-value="M" class="swatch-element m-swatch available"> <label for="swatch-0-m-6072559239">
            M <span class="crossed-out"></span></label></div> <input id="swatch-0-l-6072559239" type="radio" name="option-0" value="L" class=""> <div data-value="L" class="swatch-element l-swatch available"> <label for="swatch-0-l-6072559239">
            L <span class="crossed-out"></span></label></div> <input id="swatch-0-xl-6072559239" type="radio" name="option-0" value="XL" class=""> <div data-value="XL" class="swatch-element xl-swatch available"> <label for="swatch-0-xl-6072559239">
            XL <span class="crossed-out"></span></label></div>

标签: xpath

解决方案


您跟随兄弟和 input@value 的 xpath 语法是错误的,

试试下面

//div[@class='swatch clearfix']/input[@name='option-0']

此外,您的父 div 标签未关闭。

在此处检查输出

https://codepen.io/ajanth2012/pen/MXaPpp?editors=1010


推荐阅读