Dart:以编程方式将子元素添加到DivElement

时间:2013-12-29 15:12:37

标签: dart dart-html

假设我想以编程方式向ButtonElement添加DivElement,以便生成的HTML为:

<div class="blah">
    <input type="button" name="whatever" value="Push Me!" />
</div>

在Dart中,我在DivElement类上看到了几个方法,我不确定哪个方法适合哪个上下文:

ButtonElement button = constructButtonElement();
DivElement div = constructDiv();

div.add(button);
div.nodes.add(button);
div.children.add(button);
// ???

同样适用于任何其他类型的容器:BodyElementSpanElement等。将DOM元素动态添加到父容器的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

我更喜欢使用常规Dart方法和操作来处理DOM元素。因此,要将一个按钮添加到随后附加到正文的div上,我会执行以下操作:

import 'dart:html';

void main() {
  var div = new DivElement();
  var button = new ButtonElement()
    ..id = 'foo'
    ..text = 'Foo';
  div.children.add(button);
  document.body.children.add(div);
}

这会创建一个带有ButtonElementid的{​​{1}},并将其附加到text的{​​{1}},并附加DivElement到文件正文。