在XPATH中使用OR的两个条件

eds*_*cle 26 javascript xpath lowercase translate uppercase

我有一个文本框'txtSearch'.我用它来按姓氏搜索人.这是我的代码.

var xmlTempResultSearch = xmlResidentListDisplay.selectNodes(
    "//PeopleList/Row[contains(translate(@LastName, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), '" +
    txtSearch.value + "')]");
Run Code Online (Sandbox Code Playgroud)

此代码选择XML中的所有姓氏,如txtSearch文本框中的文本输入.

这会将所有大写字母转换为小写字母.

因此,如果我正在搜索'Dorosan',如果我键入'doro',它会检索正确的人,因为它将'D'翻译为'd'.但是当我输入'Doro'时,它并没有找到正确的人.

我想知道我是否可以在XPATH中有两个条件,以及如何?我希望能够将所有大写翻译为小写,或者将所有小写翻译为大写.

Cos*_*inO 33

你可以使用or/ andinside[....]

例:

//*[contains('abc') or contains('def') or text()='abcdef']
Run Code Online (Sandbox Code Playgroud)

有关运营商的更多信息:http: //www.w3schools.com/xpath/xpath_operators.asp


Jir*_*ser 33

andor允许条件内:[here].或者,您也可以使用管道符号在一个XPath表达式中使用多个路径.

//PeopleList/Row[c1] | //PeopleList/Row[c2]