我正在尝试表达看起来像这样的XPath。
//div[@class='foo']/ancestor::(fieldset or div)[@class='foo1']
但是XPath目前无法使用(fieldset or div)
像下面这样的长XPath正在工作,
(//div[@class='foo']/ancestor::fieldset[@class='foo1'] or //div[@class='foo']/ancestor::div[@class='foo1'])
但是,是否有任何简洁的方法来构建此XPath?
您可以使用以下xpath:
//div[@class='foo']/ancestor::[//fieldset or //div][@class='foo1']
进行三项调整:
ancestor::
轴的使用。or
移动到谓词内。self::
轴与*
相对应,并分解出常用的@class
谓词。一起:
//*[self::fieldset or self::div][@class='foo1']//div