查找多个属性的语法

时间:2010-11-29 01:56:28

标签: jquery xml xpath

我正在使用以下jQuery XPath来查找具有属性“pathname”的任何元素(一个从URL获取页面位置的变量)。

var local_url = "*[url=" + pathname + "]";

但是,我现在想要找出这个变量是否存在于两个元素属性之一:url或alturl。我将如何在XPath语法中表达这一点,以便我不必使用if / else语句? (例如,找到url = pathname或alturl = pathname的所有属性。)

谢谢!

3 个答案:

答案 0 :(得分:3)

您可以使用multiple selector查找具有属性匹配的元素,例如:

$("[url=" + pathname + "], [alturl=" + pathname + "]")

答案 1 :(得分:1)

  

我将如何在XPath中对此进行说明   语法所以我不必使用   if / else语句? (例如,找到所有   url = pathname OR的属性   alturl = pathname。)

此XPath表达式

*[@url='someString' or @alturl='someString']

选择当前节点的子元素并且具有值为url的属性'someString'或(非独占)属性alturl且值为'someString'的所有元素

答案 2 :(得分:0)

  

我现在想找到这个   变量存在于两个元素之一中   属性

这正是节点集比较的行为:

*[(@url|@alturl)='someString']