Skip to main content
 首页 » 编程设计

c#之XPath对于带有不符合特定条件的子节点的所有节点

2025年05月04日33oomusou

我正在尝试查找网页中的某些元素,但是我不知道该怎么做。

我尝试使用not函数,但是由于这种情况,它无法正常工作。

<table id="uniqueId"> 
  <tbody> 
    <tr></tr> 
    <tr class="row" onclick="do_a_thing"> 
      <td> 
        <input type="hidden" value="2" /> 
      </td> 
      <td> 
        <input type="hidden" value="1" /> 
      </td> 
    </tr> 
    <tr class="row" onclick="do_a_thing"> 
      <td> 
        <input type="hidden" value="2" /> 
      </td> 
      <td> 
        <input type="hidden" value="1" /> 
      </td> 
    </tr> 
    <tr class="row" onclick="do_a_thing"> 
      <td> 
        <input type="hidden" value="3" /> 
      </td> 
      <td> 
        <input type="hidden" value="1" /> 
      </td> 
    </tr> 
  </tbody> 
</table> 


我想选择所有没有 trinput为子的 value=2

我试过了: //tr[.//input[not(@value='2')]],但是它不起作用,因为 tr还具有值为 input的另一个 1

请您参考如下方法:

这个XPath

//tr[not(td/input/@value='2')] 


根据请求选择所有不包含 trtd/input属性值等于 value2