Bonjour à tous,
voilà je travaille avec 2 arbres DOM et je souhaite cloner un nœud du premier arbre pour le mettre dans le second.
Mon problème : étant donné que NewNode a été créé dans le premier arbre DOM, il est lié au DOMDocument du premier arbre, qui est différent du DOMDocument du second arbre TreeModel. Du coup, le appendChild plante systématiquement avec le message suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 void addDomNode(DOMNode *NewNode, const QString &XPath) { BIBDOMTreeModel *TreeModel = getDOMTreeModel(); DOMNode *LastNode = TreeModel->findNode(XPath); DOMNode *ParentNode = LastNode->getParentNode(); DOMNode *ClonedNode = NewNode->cloneNode(true); ParentNode->appendChild(ClonedNode); }
A node is used in a different document than the one that created it
Comment résoudre mon problème étant donné que je ne peux pas changer le DOMDocument de NewNode, et que je n'ai pas envi de me fabriquer une fonction récursive qui par cloner mon noeud convenablement !!!
merci pour votre aide![]()
Partager