DART自定义输入元素

时间:2017-03-13 19:33:34

标签: dart

我尝试使用自定义输入元素与db一起工作。 所有这些都在Chrome中完美运行,但在IE中无效。

我创建测试应用

abstract class DBEdit {
  DBSetValue(String val) {}
}

class DBEditText extends InputElement implements DBEdit {
  String _FieldName = "";

  DBEditText.created() : super.created() {
    this.onClick.listen(doOnClick);
  }

  doOnClick(Event e){
    window.alert("Click");
  }

  @override
  DBSetValue(String val) {
    this.value = val;
  }
}

void main() {
  try {
    document.registerElement('db-edit', DBEditText, extendsTag: "input");
  } catch (e) {
    window.alert("Error registration: " + e.toString());
  }

  DivElement div = querySelector("#play");
  div.appendHtml("<input id='ename' type='date' is='db-edit' size=50>", treeSanitizer: NodeTreeSanitizer.trusted);

  DBEditText eText = querySelector("#ename");
  eText.DBSetValue("2017-03-17");
}

在HTML文件中:

<html>
<head>
    ....
    <script src="packages/web_components/webcomponents.min.js"></script>
    <script src="packages/web_components/dart_support.js"></script>
    .....
</head>

  <body>
  <div id="play"></div>

</body>
</html>

结果所有在Chrome中工作,但DBSetValue在IE中不起作用,但doOnClick在IE中工作。 IE 11。 任何的想法? 如果元素不在dart代码中创建,那么所有工作也都在IE中。

0 个答案:

没有答案