【问题标题】:How to select parent if a child do not have attribute & if another attribute is empty如果孩子没有属性以及另一个属性为空,如何选择父母
【发布时间】:2023-01-22 11:22:44
【问题描述】:
<table>
<select>
    <option value="one">1</option>
    <option value="two">2</option>
    <option selected="selected" value="three">3</option>
    <option value="four">4</option>
    <option selected="selected" value></option>
<select>

<select>
    <option value="one">1</option>
    <option value="two">2</option>
    <option value="three">3</option>
    <option value="four">4</option>
    <option selected="selected" value></option>
<select>

<select>
    <option value="one">1</option>
    <option value="two">2</option>
    <option value="three">3</option>
    <option value="four">4</option>
    <option selected="selected" value></option>
<select>
</table>

如何使用 XPath 选择底部的两个 Select 或下拉项?我尝试过的事情: *//table//[select[not(@value='') and not(option[@selected='selected'])]]

但是上面选择了所有三个select 或下拉项,如何使用 XPath 只选择底部的两个节点?

【问题讨论】:

    标签: xml xpath


    【解决方案1】:

    您可以使用 XPath 中的 last() 函数来选择底部的两个 Select 元素。要选择最后两个 Select 元素,可以使用以下 XPath 表达式:

    //table//select[position()>last()-2]
    

    这将选择最后两个 Select 元素,它们是 table 元素的子元素。

    您还可以使用以下 XPath 表达式来选择具有空值和 selected 属性的最后两个 Select 元素:

    //table//select[position()>last()-2 and option[@selected='selected' and @value='']]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-08
      • 2012-10-13
      • 1970-01-01
      • 1970-01-01
      • 2014-12-19
      • 2017-05-17
      • 2015-04-01
      • 1970-01-01
      相关资源
      最近更新 更多