是否可以使用xpath选择多个选项?
这意味着在选择多个表单中选择第一个和第三个选项。谓词(方括号内的所有内容)指定在结果集中包含特定节点的条件,任何一个元素都不可能同时具有是否可以使用xpath选择多个选项?,xpath,nokogiri,Xpath,Nokogiri,这意味着在选择多个表单中选择第一个和第三个选项。谓词(方括号内的所有内容)指定在结果集中包含特定节点的条件,任何一个元素都不可能同时具有val值1和3。但是,如果将和替换为或,则表达式将匹配满足以下任一条件的任何节点: /html/body/form/select/option[@val='1'或@val='3'] 旁注:如果要根据节点的位置而不是属性值选择节点,可以在谓词中使用position()函数。您的意思是还是 /html/body/form/select/option[@val = '
val
值1和3。但是,如果将和
替换为或
,则表达式将匹配满足以下任一条件的任何节点:
/html/body/form/select/option[@val='1'或@val='3']
旁注:如果要根据节点的位置而不是属性值选择节点,可以在谓词中使用
position()
函数。您的意思是还是
/html/body/form/select/option[@val = '1' and @val = '3']
这应该选择两个元素。通过使用和
您试图选择一个元素,该元素的val
同时是1
和3
,这两个元素都不起作用。:-) 很清楚,select是指它返回结果中的节点,对吗?不是真的在DOM中选择它吗
无论哪种方式,您都需要以下内容:
/html/body/form/select/option[@val = '1' or @val = '3']
或
注意|
的用法,意思是“或”,您不想使用“和”,因为这意味着您希望所有结果都位于位置1和3,这是不可能的。您需要所有位于位置1或3的结果。似乎您只需要更改逻辑运算符@val不能是1和3
/html/body/form/select/option[1|3]
/html/body/form/select/option[position()=1|postion()=3]