XML DOM XPathResult-objekti

XPath-kyselyn tulos.

XPathResult-objekti

XPathResult-objekti edustaa XPath-lauseen arvoa. Tämä tyyppinen objekti luodaan Document.evaluate() ja XPathExpression.evaluate() Paluu. XPath-kyselyt voidaan laskea merkkijonona, numerona, totuusarvona, soluna ja solujen luettelona. XPath-toteutuksella voidaan palauttaa solujen luettelo useilla eri tavoilla, joten tämä objekti määrittelee hieman monimutkaisemman API:n XPath-kyselyn todellisen tuloksen saamiseksi.

Ennen kuin käytät XPathResult:ää, tarkista resultType-ominaisuus. Se tallentaa XPathResult-vakion. Tämän ominaisuuden arvo kertoo, minkä ominaisuuden ja metodin sinun täytyy käyttää määrittääksesi tuloksen. Kutsu ei ole määritelty current resultType:lle tai luku ei ole määritelty sille määritellylle ominaisuudelle voi aiheuttaa poikkeuksen.

IE ei tue XPathResult API:ta. Jos haluat suorittaa XPath-kyselyn IE:ssä, katso: Node.selectNodes() ja Node.selectSingleNode() .

XPathResult-objektin vakiot

Seuraavat vakiot määrittelevät XPath-kyselyn mahdolliset tulostyypit. XPathResult-objektin resultType-ominaisuus tallentaa näistä arvoista yhden, joka määrittää, minkä tyyppistä tietoa objekti tallentaa. Nämä vakiot käytetään yhdessä Document.evaluate() ja XPathExpression.evaluate() -metodien kanssa määrittääksesi odotetun tulostyypin.

Nämä vakiot ja niiden merkitykset ovat seuraavat:

ANY_TYPE
Siirrä tämä arvo Document.evaluate() tai XPathExpression.evaluate() -metodeille määrittääksesi hyväksyttävän tulostyylin. ominaisuus resultType ei aseta tätä arvoa.
NUMBER_TYPE
numbervalue tallentaa tuloksen.
STRING_TYPE
stringvalue tallentaa tuloksen.
BOOLEAN_TYPE
booleanValue tallentaa tuloksen.
UNORDERED_NODE_ITERATOR_TYPE
Tämä tulos on solujen epäjärjestetty joukko, jonka voi vierailla yksi kerrallaan kutsumalla iterateNext()-metodia, kunnes se palauttaa null. Tässä iterointiprosessissa dokumenttia ei saa muuttaa.
ORDERED_NODE_ITERATOR_TYPE
Tuloksena on solujen luettelo, järjestettynä dokumentin ominaisuuksien mukaan. Voit vierailla solujen yksi kerrallaan kutsumalla iterateNext()-metodia, kunnes se palauttaa null. Tässä iterointiprosessissa dokumenttia ei saa muuttaa.
UNORDERED_NODE_SNAPSHOT_TYPE
Tuloksena on satunnainen solujen luettelo. snapshotLength-ominaisuus määrittää luettelon pituuden, ja snapshotItem()-metodi palauttaa tietyn indeksin solun. Solut voivat olla eri järjestyksessä kuin ne ilmestyvät dokumentissa. Koska tämä tulos on 'kuvakaappaus', se on voimassa, vaikka dokumentti muuttuu.
ORDERED_NODE_SNAPSHOT_TYPE
Tämä tulos on satunnainen solmujen luettelo, aivan kuten UNORDERED_NODE_SNAPSHOT_TYPE, mutta luettelo on järjestetty dokumentin järjestykseen.
ANY_UNORDERED_NODE_TYPE
singleNodeValue -ominaisuus viittaa solmuun, joka vastaa kyselyä; jos mikään solmu ei vastaa kyselyä, arvo on null. Jos useat solmut vastaavat kyselyä, singleNodeValue voi olla mikä tahansa vastannut solmu.
FIRST_ORDERED_NODE_TYPE
singleNodeValue tallentaa ensimmäisen dokumentissa olevan solmun, joka vastaa kyselyä; jos mikään solmu ei vastaa kyselyä, arvo on null.

XPathResult-objektin instanssin ominaisuudet

Monet näistä ominaisuuksista ovat voimassa vain, jos resultType tallentaa erityisen arvon. Pääsy ei määritettyä resultType:ää varten määritettyyn ominaisuuteen aiheuttaa poikkeuksen.

booleanValue
Kun resultType on BOOLEAN_TYPE, tallenna tulostaulu.
invalidIteratorState
Jos resultType on ITERATOR_TYPE-vakion yksi ja dokumentti on muutettu, arvo on true; se tekee iteroinnista epävirallisen, koska tulokset on jo palautettu.
numberValue
Kun resultType on NUMBER_TYPE, tallenna tulostaulu.
resultType
Käytä XPath-kyselyä määrittääksesi, minkälaista tulosta se palauttaa. Arvo on edellä lueteltu yksi vakio. Tämän ominaisuuden arvo kertoo, mitä muita ominaisuuksia ja menetelmiä voit käyttää.
singleNodeValue
Kun resultType on XPathResult.ANY_UNORDERED_NODE_TYPE tai XPathResult.FIRST_UNORDERED_NODE_TYPE, tallenna tulostaulu.
snapshotLength
Kun resultType on UNORDERED_NODE_SNAPSHOT_TYPE tai ORDERED_NODE_ITERATOR_TYPE, määritä palautettavien solmujen määrä. Käytä tätä ominaisuutta yhdessä snapshotItem() -menetelmän kanssa.
stringValue
Kun resultType on STRING_TYPE, tallennetaan tuluarvo.

XPathResult-objektin menetelmät

Menetelmä Kuvaus
iterateNext() Jos resultType on UNORDERED_NODE_ITERATOR_TYPE tai ORDERED_NODE_ITERATOR_TYPE, käytä tätä menetelmää.
snapshotItem() Palauttaa indeksiin määritetyn solmun listan. Tämä menetelmä voidaan käyttää vain, kun resultType on UNORDERED_NODE_SNAPSHOT_TYPE tai ORDERED_NODE_SNAPSHOT_TYPE. snapshotLength-ominaisuus käytetään tämän menetelmän kanssa.

Aiheeseen liittyvät sivut

Document.evaluate() ja XPathExpression.evaluate()