ໂອບລີມ ດອມເອມ ອີໂອເມັນເພບສເຊິ່ງເຊີ່ີ່

ຜົນຂອງການຊອກຫາ XPath

ບັນດາບັນຊີ XPathResult

ບັນດາບັນຊີ XPathResult ສະແດງຄູ່ຄວາມຂອງການຊອກຫາ XPath. ບັນດາບັນຊີຂອງປະເພດນີ້ຈະ Document.evaluate() ແລະ XPathExpression.evaluate() ກັບຄືນ. XPath ການຊອກຫາສາມາດນັບເປັນສາຍຈົດ, ຕົວເລກ, ຄວາມຈະເອົາ, ຂັ້ນຕົວ ແລະ ລາຍການຂັ້ນຕົວ. XPath ການປະຕິບັດສາມາດປະກາດລາຍການຂັ້ນຕົວໃນຫຼາຍວິທີ, ດັ່ງນັ້ນບັນດາບັນຊີດັ່ງກ່າວໄດ້ກໍານົດຄຳມືການປະຕິບັດທີ່ຫຼາຍລະອຽດຂອງບັນດາບັນຊີສາມາດກວດສອບພາສາຈະຖືກນຳໃຊ້ເພື່ອຄົ້ນຫາຜົນຂອງການຊອກຫາ XPath.

ເພື່ອນຳໃຊ້ XPathResult, ກວດກາປະເພດ resultType. ປະເພດນັ້ນຈະກຳນົດ XPathResult ຄວາມກຳນົດ. ຄຸນຄ່າຂອງປະເພດນັ້ນຈະບອກຄຳຄວາມທີ່ຈະຕ້ອງໃຊ້ກັບປະເພດທີ່ຈະບັນທຶກຜົນ. ການເກັບກົດລະບຸຫຼືການອ່ານປະເພດຫຼືປະເພດທີ່ບໍ່ມີຄວາມກຳນົດຈະຫາຫາຍຫາຄວາມເສຍຫາຍ.

IE ບໍ່ສະໜັບສະໜູນ XPathResult API. ເພື່ອດຳເນີນ XPath ການຊອກຫາໃນ IE, ການອ່ານ: Node.selectNodes() ແລະ Node.selectSingleNode() .

XPathResult ສະຖານທີ່ຂອງຄວາມກຳນົດ

ຄວາມກຳນົດຈະນັ້ນກໍ່ມີຄວາມຄຸນຄ່າທີ່ອາດຈະກັບຄືນຫາຂອງ XPath ການຊອກຫາ. XPathResult ສະຖານທີ່ຂອງ resultType ກຳນົດຄຸນຄ່າຈະນັ້ນໜຶ່ງ, ເພື່ອກຳນົດປະເພດຜົນທີ່ບັນທຶກ. ຄວາມກຳນົດຈະນັ້ນຈະມີການໃຊ້ກັບ Document.evaluate() ແລະ XPathExpression.evaluate() ເພື່ອກຳນົດປະເພດຜົນທີ່ຄິດວ່າ.

ຄວາມກຳນົດຈະນັ້ນ ແລະ ຄວາມຄຸນຄ່າຂອງພວກເຂົາຫຼືກໍ່ຈະຖືກອະທິບາຍວ່າ:

ANY_TYPE
ຈະສົ່ງຄຸນຄ່ານັ້ນໃຫ້ Document.evaluate() ຫຼື XPathExpression.evaluate() ເພື່ອກຳນົດປະເພດຜົນທີ່ຍອມຮັບ. ປະເພດ resultType ບໍ່ກຳນົດຄຸນຄ່ານັ້ນ.
NUMBER_TYPE
numbervalue ກຳນົດຜົນ.
STRING_TYPE
stringvalue ກຳນົດຜົນ.
BOOLEAN_TYPE
booleanValue ກຳນົດຜົນ.
UNORDERED_NODE_ITERATOR_TYPE
ຜົນພິຈາລະນາມັນເປັນການຮ່ວມຂອງຫົວຂໍ້ທີ່ບໍ່ມີອຳນາດ, ຈະສາມາດເຂົ້າເຖິງຫົວຂໍ້ໂດຍການເກັບກົດລະບຸ iterateNext() ຈົນກວ່າມັນກັບຄືນຫາ null. ໃນຂະບວນການທົດລອງ, ໂຕແບບຕ້ອງບໍ່ຖືກດັດແປງ.
ORDERED_NODE_ITERATOR_TYPE
ຜົນພິຈາລະນາມັນເປັນລາຍການຂອງຫົວຂໍ້, ທີ່ຈະຕິດຕັ້ງຕາມປະພັນຂອງໂຕແບບ. ຈະສາມາດເຂົ້າເຖິງຫົວຂໍ້ໂດຍການເກັບກົດລະບຸ iterateNext() ຈົນກວ່າມັນກັບຄືນຫາ null. ໃນຂະບວນການທົດລອງ, ໂຕແບບຕ້ອງບໍ່ຖືກດັດແປງ.
UNORDERED_NODE_SNAPSHOT_TYPE
ຜົນພິຈາລະນາມັນເປັນລາຍການຂອງຫົວຂໍ້ທີ່ສາມາດເຂົ້າເຖິງຢ່າງບວກ. ຄວາມຍາວຂອງ snapshotLength ກຳນົດຄວາມຍາວຂອງລາຍການ, ແລະ ກົນລະບຸ snapshotItem() ຈະປະກອບຫົວຂໍ້ທີ່ຕິດຕັ້ງຕາມບ່ອນບັນທຶກ. ຫົວຂໍ້ອາດບໍ່ຕາມອິດທິພົນຂອງພວກເຂົາໃນໂຕແບບ. ຍ້ອນວ່າຜົນພິຈາລະນາມັນເປັນ “ບັນທຶກ”, ເຖິງແມ່ນໂຕແບບໄດ້ປ່ຽນແປງ, ມັນຍັງມີຜົນດີ.
ORDERED_NODE_SNAPSHOT_TYPE
ຜົນກະທົບນີ້ແມ່ນຫົວຂໍ້ທີ່ສາມາດສະເໜີຫາບັນດາຫົວຂໍ້ບັນຈຸ, ຄືກັບ UNORDERED_NODE_SNAPSHOT_TYPE, ແຕ່ວ່າລາຍການຈະຈັດອອກຕາມຊັ້ນທີ່ຢູ່ໃນເອກະສານ.
ANY_UNORDERED_NODE_TYPE
singleNodeValue properties reference to a node that matches the query, if no matching node is found it will be null. If there are multiple nodes that match the query, singleNodeValue may be any of the matching nodes.
FIRST_ORDERED_NODE_TYPE
singleNodeValue ບັນທຶກຫົວຂໍ້ທີ່ຈະຕອບຄຳສັ່ງທີ່ຕິດຕາມຄຳສັ່ງ, ຖ້າບໍ່ມີຫົວຂໍ້ທີ່ຕອບຄຳສັ່ງຈະເປັນ null.

XPathResult object properties

ບັນດາຄວາມນີ້ຈະມີຜົນສາມາດພຽງແຕ່ເວລາທີ່ resultType ບັນທຶກຄວາມນິວສະຫຼະພິເສດ. ການເຂົ້າເຖິງບັນດາຄວາມທີ່ບໍ່ໄດ້ມີຄວາມນິວສະຫຼະ resultType ຈະເປັນລະເບີດ.

booleanValue
ບ່າງຈະຕອບຄຳສັ່ງ resultType ຈະແມ່ນ BOOLEAN_TYPE ກໍ່ຕ້ອງບັນທຶກຄູ່ມູນຄຳສັ່ງ.
invalidIteratorState
ຖ້າ resultType ແມ່ນຄວາມນິວສະຫຼະ ITERATOR_TYPE ແລະເອກະສານໄດ້ຖືກແກ້ໄຂແລ້ວ ຈະກັບຄວາມ true; ມັນຈະເຮັດໃຫ້ຄຳສັ່ງເປັນລະເບີດ ຍ້ອນຜົນກະທົບໄດ້ກັບຄືນ.
numberValue
ບ່າງຈະຕອບຄຳສັ່ງ resultType ຈະແມ່ນ NUMBER_TYPE ກໍ່ຕ້ອງບັນທຶກຄູ່ມູນຄຳສັ່ງ.
resultType
ການນຳໃຊ້ XPath ທີ່ຈະມີຜົນກະທົບ. ຄຳສັງຍາຈະແມ່ນຄວາມນິວສະຫຼະທີ່ອອກມາກ່ອນ. ຄຳສັງຍາຂອງບັນດາຄວາມນີ້ຈະບອກເລຂາພະຍານວ່າຈະນຳໃຊ້ບັນດາຄວາມນີ້.
singleNodeValue
ບ່າງຈະຕອບຄຳສັ່ງ resultType ຈະແມ່ນ XPathResult.ANY_UNORDERED_NODE_TYPE ຫຼື XPathResult.FIRST_UNORDERED_NODE_TYPE ກໍ່ຕ້ອງບັນທຶກຄູ່ມູນຄຳສັ່ງ.
snapshotLength
ບ່າງຈະຕອບຄຳສັ່ງ resultType ຈະແມ່ນ UNORDERED_NODE_SNAPSHOT_TYPE ຫຼື ORDERED_NODE_ITERATOR_TYPE ກໍ່ຕ້ອງບັນທຶກຈຳນວນຂອງຫົວຂໍ້ທີ່ຈະກັບຄືນ. ສຳລັບການສະຫຼຸບສະຫຼາກຂອງ snapshotItem() ກໍ່ຈະໃຊ້ບັນດາຄວາມນີ້.
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()