|
Home -> Manuali e Tutorials -> Guida XML DOM -> Oggetti DOM
Scarica il tutorial | Stampa il tutorial | Cerca nel sito
MODIFICHE AGLI OGGETTI DOM
Come abbiamo in parte anticipato lo standard DOM permette anche di modificare l'albero XML; una volta creato un Nodo, questo deve essere "installato" in maniera opportuna, oppure possiamo cancellarlo...
Partiamo dalla classe "Document" per vedere subito come si crea un nuovo nodo.
Metodi della classe Document:
- createElement(nome): crea un elemento col nome dato.
- createAttribute(nome): crea un attributo col nome dato.
- createTextNode(stringa): crea un nodo di testo contenente la stringa data.
Un nuovo nodo può essere generato sempre e solo dalla radice dell'albero. Appena creato il nuovo nodo esiste ma non ha una posizione nell'albero. Per questo il nodo va "installato".
Metodi della classe Node: gli oggetti "maneggiati" da questi metodi possono essere nuovi nodi appena creati e non ancora posizionati oppure nodi già presenti. Se le operazioni hanno esito positivo, i metodi restituiscono l'oggetto appena "movimentato":
- appendChild(nodo): aggiunge un nodo ai figli; se il nodo era già presente in un'altra posizione viene prima rimosso.
- removeChild(nome nodo): elimina un nodo figlio, restituisce il nome del nodo rimosso. - replaceChild(nome nodo 1, nodo 2): sostituisce il figlio nodo 1 con il nodo 2. Se il nodo era già presente in un'altra posizione viene prima rimosso.
- insertBefore(nodo 1, nome nodo 2): inserisce il nodo 1 prima del figlio nodo 2. Se il 2 non è indicato l'operazione è identica a .appenChild. Se il nodo era già presente in un'altra posizione viene prima rimosso.
- cloneNode(true/false): copia il nodo e tutto il sottoalbero (true), oppure il nodo solo con gli attributi (false), ma non il testo (che è un nodo figlio).
Metodi della classe Element: riguardano tutti gli attributi. Ricordiamo che anche se gli attributi non vengono trattati ufficialmente come figli, sono comunque dei nodi sottostanti al loro elemento. Perciò va considerata la differenza fra "nodo" attributo e valore dell'attributo stesso.
- setAttribute(nome): imposta il valore dell'attributo indicato, che deve essere già esistente.
- removeAttribute(nome): resetta il valore dell'attributo.
- setAttributeNode(nodo attributo): aggiunge un attributo a quelli del nodo. Se viene rimpiazzato un attributo esistente il metodo restituisce tale attributo, altrimenti il valore null.
- removeAttributeNode: rimuove l'attributo ed il suo contenuto.
Metodi della classe CharacterData:
- appenData(stringa): aggiunge la stringa data a quella nel nodo testo. Non restituisce alcun valore.
- insertData(stringa, posizione): inserisce la stringa data della posizione indicata. Il contatore delle posizioni inizia da 0 e non da 1.
- deleteData(posizione, lunghezza): elimina un certo numero di caratteri dopo la posizione indicata.
- replaceData(posizione, lunghezza, stringa): sostituisce il segmento indicato da posizione e lunghezza con la stringa data.
Metodi della classe NodeNamedMap:
- setNamedItem(nome): aggiunge al vettore un nodo col nome dato.
- removeNamedItem(nome): elimina dal vettore il nodo dato.
Torna su | Indice Guida | Pagina << 3 >>
|