如您所知,在Java中创建Dom元素的正确方法是执行以下操作。
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Document d;
Element e;
e = d.createElement("tag");
您需要使用d生成元素,因为它需要文档上下文。 (我不是100%知道为什么,但是也许误会这是我的问题的一部分)
我不明白的是,为什么你不能做这样的事情
Element e;
Element e2;
e2 = e.createElement("anothertag");
由于e已经具有d的上下文,为什么不能从一个元素创建另一个元素?这肯定会简化我的设计,而不必到处都引用该文档。
最佳答案
Element扩展了Node,而Node定义了getOwnerDocument,因此您可以执行以下操作:
e2 = e.getOwnerDocument().createElement("tag");
http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Node.html#getOwnerDocument()