考虑这两种类型:
<select name="garden">
<option>Flowers</option>
<option selected="selected">Shrubs</option>
<option>Trees</option>
<option selected="selected">Bushes</option>
<option>Grass</option>
<option>Dirt</option>
</select>
@val
实际上是用于指示value=""
属性吗?
@value
是否用于指示innerText值?
例如,如果<option>
不包含任何value=""
属性,会发生什么情况。那么你怎么选择它呢?
select/option[@value = "Grass"]
对于上述情况,Xpath会自动忽略空格吗?应该修剪一下吗?
编辑:
对于选择多个选项,这样就足够了吗?
select/option[normalize-space(text())="Grass" or normalize-space(text())="Trees"]
发布于 2009-10-10 22:36:33
要按文本值选择,可以使用text()
函数。并且规格化空格是必需的,因为默认情况下不会删除它们。下面是一个示例:
select/option[normalize-space(text())="Grass"]
@value
- " value“属性的值
@val
- "val“属性的值
normalize-space()
- function返回带有空格的参数字符串,该字符串通过去掉前导空格和尾随空格并将一系列空格字符替换为一个空格来标准化
发布于 2009-10-10 22:33:56
好吧,如果空格不是问题:
/select/option[.='Grass']
不过,我需要检查re空格。您可以始终将以下内容标准化:
/select/option[normalize-space(.)='Grass']
https://stackoverflow.com/questions/1549256
复制相似问题