Oggetto XPathResult DOM XML
- Pagina precedente DOM XPathExpression
- Pagina successiva DOM XSLTProcessor
Il risultato della query XPath.
L'oggetto XPathResult
L'oggetto XPathResult rappresenta il valore di un'espressione XPath. Gli oggetti di questo tipo Document.evaluate() E XPathExpression.evaluate() Ritorna. La query XPath può essere calcolata come stringa, numero, valore booleano, nodo e elenco di nodi. L'implementazione XPath può restituire l'elenco dei nodi in diversi modi, pertanto, questo oggetto definisce una API leggermente complessa per ottenere il risultato effettivo di una query XPath.
Per utilizzare un XPathResult, controlla l'attributo resultType. Questo attributo memorizza un costante XPathResult. Il valore di questo attributo ti dice quale attributo e metodo utilizzare per determinare il valore del risultato. Chiamare un metodo o leggere un attributo non definito per il resultType attuale causerebbe un'eccezione.
Internet Explorer non supporta l'API XPathResult. Per eseguire query XPath in Internet Explorer, consulta Node.selectNodes() E Node.selectSingleNode() .
Costanti dell'oggetto XPathResult
Queste costanti definiscono il tipo di risultato che una query XPath può restituire. L'attributo resultType dell'oggetto XPathResult memorizza uno di questi valori, utilizzato per specificare quale tipo di risultato l'oggetto deve salvare. Queste costanti vengono utilizzate insieme a Document.evaluate() e XPathExpression.evaluate() per specificare il tipo di risultato atteso.
Questi costanti e il loro significato sono i seguenti:
- ANY_TYPE
- Passa questo valore a Document.evaluate() o XPathExpression.evaluate() per specificare il tipo di risultato accettabile. L'attributo resultType non imposta questo valore.
- NUMBER_TYPE
- numbervalue memorizza il risultato.
- STRING_TYPE
- stringvalue memorizza il risultato.
- BOOLEAN_TYPE
- booleanValue memorizza il risultato.
- UNORDERED_NODE_ITERATOR_TYPE
- Questo risultato è una raccolta di nodi non ordinati, che può essere acceduta in successione chiamando iterateNext() fino a quando viene restituito null. Durante questo iterazione, il documento non deve essere modificato.
- ORDERED_NODE_ITERATOR_TYPE
- Il risultato è una lista di nodi ordinati secondo le proprietà del documento, che può essere acceduta in successione chiamando iterateNext() fino a quando viene restituito null. Durante questo iterazione, il documento non deve essere modificato.
- UNORDERED_NODE_SNAPSHOT_TYPE
- Il risultato è una lista di nodi di accesso casuale. L'attributo snapshotLength specifica la lunghezza della lista e il metodo snapshotItem() restituisce il nodo indicato dall'indice. I nodi potrebbero non apparire nell'ordine in cui compaiono nel documento. Poiché questo risultato è una “fotografia”, rimane valido anche se il documento cambia.
- ORDERED_NODE_SNAPSHOT_TYPE
- Questo risultato è una lista di nodi di accesso casuale, come UNORDERED_NODE_SNAPSHOT_TYPE, ma l'elenco è ordinato secondo l'ordine del documento.
- ANY_UNORDERED_NODE_TYPE
- L'attributo singleNodeValue fa riferimento a un nodo che corrisponde alla query, se non ci sono nodi corrispondenti, è null. Se ci sono più nodi che corrispondono alla query, singleNodeValue potrebbe essere qualsiasi nodo corrispondente.
- FIRST_ORDERED_NODE_TYPE
- singleNodeValue保存了文档中与查询匹配的第一个节点,如果没有匹配的节点,则为null。
Proprietà dell'oggetto XPathResult
Molte delle proprietà qui indicate sono valide solo quando resultType ha salvato un valore specifico. L'accesso a proprietà non definite per il current resultType causa un'eccezione.
- booleanValue
- Quando resultType è BOOLEAN_TYPE, salva il valore del risultato.
- invalidIteratorState
- Se resultType è una costante ITERATOR_TYPE e il documento è stato modificato, allora è true; rende l'iteratore non valido perché il risultato è già stato restituito.
- numberValue
- Quando resultType è NUMBER_TYPE, salva il valore del risultato.
- resultType
- Determina quale risultato restituisce una query XPath. Il valore è uno dei costanti elencati di seguito. Il valore di questa proprietà indica quali altre proprietà e metodi possono essere utilizzati.
- singleNodeValue
- Quando resultType è XPathResult.ANY_UNORDERED_NODE_TYPE o XPathResult.FIRST_UNORDERED_NODE_TYPE, salva il valore del risultato.
- snapshotLength
- Quando resultType è UNORDERED_NODE_SNAPSHOT_TYPE o ORDERED_NODE_ITERATOR_TYPE, specifica il numero di nodi restituiti. Questo attributo deve essere utilizzato insieme a snapshotItem().
- stringValue
- Quando resultType è STRING_TYPE, il valore del risultato viene salvato.
Metodi dell'oggetto XPathResult
Metodo | Descrizione |
---|---|
iterateNext() | Se resultType è UNORDERED_NODE_ITERATOR_TYPE o ORDERED_NODE_ITERATOR_TYPE, utilizzare questo metodo. |
snapshotItem() | Restituisce il nodo specificato dall'indice nella lista dei risultati. Questo metodo può essere utilizzato solo quando resultType è UNORDERED_NODE_SNAPSHOT_TYPE o ORDERED_NODE_SNAPSHOT_TYPE. L'attributo snapshotLength deve essere utilizzato insieme a questo metodo. |
Pagine correlate
- Pagina precedente DOM XPathExpression
- Pagina successiva DOM XSLTProcessor