XML DOM XPathResult обьект

Ang resulta ng XPath query.

Ang XPathResult object

Ang XPathResult object ay naglalarawan ng halaga ng isang XPath expression. Ang uri ng object na ito ay Document.evaluate() И XPathExpression.evaluate() Bumalik. Ang XPath query ay maaaring mabibilang bilang string, number, boolean, node at list ng nodes. Ang pagpapatupad ng XPath ay maaaring ibalik ang listahan ng nodes sa ilang paraan, kaya't ang object na ito ay tinukoy ng isang mas kumplikadong API upang makuha ang tunay na resulta ng isang XPath query.

Upang gamitin ang isang XPathResult, suriin muna ang attribute na resultType. Ito ay mag-iimbak ng isang konstante ng XPathResult. Ang halaga ng property na ito ay magtutukoy sa anong attribute at method na dapat gamitin upang matukoy ang halaga ng resulta. Ang pagtawag sa mga method na hindi naka-define para sa kasalukuyang resultType o pagbabasa ng mga attribute na hindi naka-define ay magdudulot ng isang kagipitan.

Hindi suportado ng IE ang XPathResult API. Upang maisagawa ang XPath kweri sa IE, tingnan ang Node.selectNodes() И Node.selectSingleNode() .

Ang mga konstante ng XPathResult object

Ang mga konstante na ito ay nagtutukoy sa uri ng resulta na maaaring maibigay ng isang XPath kweri. Ang attribute na resultType ng XPathResult object ay nag-iimbak ng isa sa mga halaga na ito, na nagtutukoy sa uri ng resulta na inimbak ng object. Ang mga konstante na ito ay ginagamit kasama ang Document.evaluate() at XPathExpression.evaluate() upang tugunang ang inaasahang uri ng resulta.

Ang mga konstante at kanilang kahulugan ay tulad ng sumusunod:

ANY_TYPE
Ihatid ang halaga na ito sa Document.evaluate() o XPathExpression.evaluate() upang tugunang ang tanggapin na uri ng resulta. Ang attribute na resultType ay hindi nagtatakda ng halaga na ito.
NUMBER_TYPE
Ang numbervalue ay nag-iimbak ng resulta.
STRING_TYPE
Ang stringvalue ay nag-iimbak ng resulta.
BOOLEAN_TYPE
Ang booleanValue ay nag-iimbak ng resulta.
UNORDERED_NODE_ITERATOR_TYPE
Ang resulta ay isang anumang koleksyon ng mga node, na maaaring ma-access sa pamamagitan ng pagpapatuloy ng pagtawag sa method na iterateNext() hanggang sa nakuha ang null. Sa prosesong ito, ang dokumento ay dapat na hindi maayos.
ORDERED_NODE_ITERATOR_TYPE
Ang resulta ay isang listahan ng mga node, na napagalaan ayon sa pagkakaroon ng mga attribute sa dokumento. Maaaring ma-access ang mga ito sa pamamagitan ng pagpapatuloy ng pagtawag sa method na iterateNext() hanggang sa nakuha ang null. Sa prosesong ito, ang dokumento ay dapat na hindi maayos.
UNORDERED_NODE_SNAPSHOT_TYPE
Ang resulta ay isang listahan ng mga access na node. Ang attribute na snapshotLength ay nagtutukoy sa haba ng listahan, at ang method na snapshotItem() ay nagbibigay ng node na may tinukoy na index. Ang mga node ay maaaring magkaiba sa pagkakaroon ng kanilang hirap sa dokumento. Dahil ang resulta na ito ay isang 'snapshot', kahit na nagbago ang dokumento, ito ay magiging epektibo pa rin.
ORDERED_NODE_SNAPSHOT_TYPE
Ang resulta ay isang listahan ng mga node na madaling ma-access, tulad ng UNORDERED_NODE_SNAPSHOT_TYPE, ngunit ang listahan na ito ay inayos ayon sa pagkakasunod-sunod sa dokumento.
ANY_UNORDERED_NODE_TYPE
Ang singleNodeValue na katangian ay sumusunod sa isang elemento na sumangayon sa paghahanap, kung walang sumangayon na elemento, maging null. Kung mayroong maraming sumangayon na elemento, ang singleNodeValue ay maaaring maging alinman sa mga sumangayon na elemento.
FIRST_ORDERED_NODE_TYPE
Ang singleNodeValue ay inilalagay ang unang elemento sa dokumento na sumangayon sa paghahanap, kung walang sumangayon na elemento, maging null.

Katangian ng object na XPathResult

Maraming katangian dito ay may bisa lamang kapag ang resultType ay nag-imbak ng isang partikular na halaga. Ang pagbubukas ng mga katangian na hindi tinukoy ng kasalukuyang resultType ay magdudulot ng kaguluhan.

booleanValue
Kapag ang resultType ay BOOLEAN_TYPE, iniimbak ang halaga ng resulta.
invalidIteratorState
Kung ang resultType ay isa sa mga palatandaan ng ITERATOR_TYPE at ang dokumento ay nabago, maging totoo ito; ito ay naging walang bisa ang pag-iterasyon dahil ang resulta ay nababalik na.
numberValue
Kapag ang resultType ay NUMBER_TYPE, iniimbak ang halaga ng resulta.
resultType
Ano ang magiging resulta ng paghahanap ng XPath. Ang halaga nito ay isa sa mga palatandaan na nakalista. Ang halaga ng katangian na ito ay nagsasabi kung anong iba pang mga katangian at mga paraan ang maaaring gamitin.
singleNodeValue
Kapag ang resultType ay XPathResult.ANY_UNORDERED_NODE_TYPE o XPathResult.FIRST_UNORDERED_NODE_TYPE, iniimbak ang halaga ng resulta.
snapshotLength
Kapag ang resultType ay UNORDERED_NODE_SNAPSHOT_TYPE o ORDERED_NODE_ITERATOR_TYPE, idinagdag ang bilang ng mga nangyari na mga node na ibabalik. Ito ay ginagamit kasama ang snapshotItem() na katangian.
stringValue
Когда resultType является STRING_TYPE, сохранить значение результата.

Методы XPathResult обьекта

Метод Описание
iterateNext() Если resultType является UNORDERED_NODE_ITERATOR_TYPE или ORDERED_NODE_ITERATOR_TYPE, используйте этот метод.
snapshotItem() Возвратить узел из списка результатов, указанного индексом. Этот метод может быть использован только когда resultType является UNORDERED_NODE_SNAPSHOT_TYPE или ORDERED_NODE_SNAPSHOT_TYPE. Свойство snapshotLength используется вместе с этим методом.

Связанные страницы

Document.evaluate() И XPathExpression.evaluate()