我正在使用以下jQuery XPath来查找具有“路径名”属性(从URL获取页面位置的变量)的任何元素。查找多个属性的语法
var local_url = "*[url=" + pathname + "]";
但是,我现在想要查找此变量是否存在于两个元素属性之一:url或alturl中。我如何在XPath语法中使用这个词,这样我就不必使用if/else语句了? (例如,查找url = pathname或alturl = pathname的所有属性。)
谢谢!
我正在使用以下jQuery XPath来查找具有“路径名”属性(从URL获取页面位置的变量)的任何元素。查找多个属性的语法
var local_url = "*[url=" + pathname + "]";
但是,我现在想要查找此变量是否存在于两个元素属性之一:url或alturl中。我如何在XPath语法中使用这个词,这样我就不必使用if/else语句了? (例如,查找url = pathname或alturl = pathname的所有属性。)
谢谢!
可以使用multiple selector找到与任一属性匹配的元素,例如:
$("[url=" + pathname + "], [alturl=" + pathname + "]")
我怎么会这个短语中的XPath 语法,所以我不必使用 如果/其他声明? (例如,找到所有 属性其中URL =路径名OR alturl =路径名。)
此XPath表达式:
*[@url='someString' or @alturl='someString']
选择属于当前节点的子节点,并且具有所有元素属性url
的值为'someString'
或(非排他性)具有值为'someString'
的属性alturl
。
我现在想找到这个 变量是否存在两种元素 属性
之一这正是节点集比较的行为:
*[(@url|@alturl)='someString']
这实际上是一个CSS选择。 XPath选择器不用`@`作为前缀吗? – alex 2010-11-29 02:01:25